
C++
多远是多远
下定决心要做的事,就要保持不动声色。
展开
-
【C++】RC4加密算法
RC4是一种对称加密算法,特点是算法简单,运行速度快,而且密钥长度是可变的,可变范围为1-256字节(8-2048比特)。本博文中的内容是基于Eric Young提供的公共封装类实现的,与网上能找到的RC4.h类似,如果需要详细了解RC4的,移步-》传送门namespace {void RC4_Encrypt(const unsigned char* cleartext, int length, const std::string& key, unsigned char* ciphe原创 2021-10-17 00:45:38 · 1631 阅读 · 0 评论 -
【C++】共享内存实现,源码供参考
基础参考《Windows核心编程》第17章。#define BUF_SIZE 4096Char inBuffer[] = "要写到内存中的内容";创建共享内存:HANDLE hMapFile = CreateFileMapping( INVALID_HANDLE_VALUE, // 物理文件句柄 NULL, // 默认安全级别 PAGE_READWRITE, // 可读可写 0,原创 2021-09-15 18:03:19 · 715 阅读 · 0 评论 -
【C++】CString转LPCSTR
最早接触Json其实是在用Java的时候,最近刚好用到,整理一下。C++ 中使用jsoncpp,用来以Json的格式进行解析传值。它的格式是这样的:”ERROR CODE“ : 0"AAAA" : "string""Data" : { "A[]" : B[] "test" :: 1231 }json核心部分 Json::ValueJson::WriterJso...原创 2021-09-06 20:00:31 · 1114 阅读 · 0 评论 -
【C++ 】auto 技巧
最近在编程的过程中,遇到一个很好用的东西,分享一下auto是一个占位符,如果你是小白的话,最好去理解一下占位符的意思,以免在便利的同时带来其他麻烦它的功能是 按照后边的值,来推测这个变量的类型。尤其在使用STL中使用非常方便。例如:使用迭代器的时候std::map<int, int >::iterator it = map.begin();如果使用auto话,可以直接写成auto it = map.begin();...原创 2020-11-23 20:49:13 · 255 阅读 · 0 评论 -
const wchar_t * 不能用于初始化 const char*
字面看是宽字符问题,我是老版本程序 或 不同系统的程序放到VS中出现的问题为什么不行网上能搜到非常详细的办法处理办法 : 项目/ 属性 /常规 中 更改下边的字符集, 一般默认都是Unicode ,更改为 宽字符集(使用多字节字符集)...原创 2020-08-20 10:10:45 · 2466 阅读 · 0 评论 -
【C++】#pragma warning 作用
#pragma warning开发人员可以将警告视为,错误处理,也可以取消错误预警#pragma warning (error: 6260)将waring 作为一个错误#pragma warning(disable:4127)将waring禁掉#pragma warning(enbale:4127)将禁用的警告启用...原创 2020-08-10 09:45:38 · 424 阅读 · 0 评论 -
C++中virtual 虚函数的作用介绍
1,介绍虚函数是定义在基类中的函数,子类必须对其进覆盖。在类中声明虚函数的格式: virtual void display();2,作用 (1)定义子类对象,并调用对象中未被子类覆盖的基类函数A。同时在该函数A中,又调用了子类覆盖的基类函数B。此刻将会调用基类中的函数B, 而我们原本是想调用是子类中的覆盖函数B。 而使用虚函数就可以解决这个问题。举个例:#inc...原创 2019-09-14 21:20:09 · 3850 阅读 · 0 评论 -
关于构造函数与析构函数的问题
问题1:问:构造函数与析构函数是什么?区别是什么?答:构造函数:每个类都分别定义了它的对象被初始化的方式,类通过一个或几个特殊的成员函数来控制其对象的初始化过程,这些函数叫做构造函数。构造函数的任务是初始化对象的数据成员,构造函数最重要的作用是创建对象本身。析构函数:析构函数初始化对象的非static数据成员,还可能做一些其他工作;析构函数释放对象使用的资源,并销毁对象非static数...转载 2019-09-12 22:34:03 · 576 阅读 · 0 评论 -
C++ 多态实现
多态多态的含义为 一个事物的多种形态,在C++程序设计张,多态性是指具有不同功能的函数可以用同一个函数名,这样就可以用一个函数名调用不同内容的函数。 一般多态分为两种1)静态多态也成为编译多态,主要包括参数多态,过载多态和强制多态。 参数多态:采用参数化模板,通过给出不同的类型参数,使的一个结构有多种类型。如C++语言中的函数模板和类模板。如 C++语言中的函数模板和类模...原创 2019-09-12 22:24:18 · 499 阅读 · 0 评论 -
常用的基础算法(必会)
优劣术语- 稳定性 原本a在b前,a=b,排序之后位置任然不变。不稳定性则相反- 内排序 所有排序都在内存中完成。外排序数据放磁盘,排序通过磁盘内存的数据传输- 事件复杂度 算法执行耗费的时间- 空间复杂度 算法执行耗费的内存In/out-place: 不占/占额外内存冒泡排序:- 比较相邻的元素。如果第一个比第二个大,就交换它们两个- 对每一对相邻元素作同样的工作,从开始第一...转载 2019-08-25 11:35:00 · 310 阅读 · 0 评论 -
C语言线程池原理介绍
为什么要用线程池?多线程适用于小型的局域网络中,但在大型的局域网或者互联网的规模下,线程的创建和销毁,都涉及到系统调用,比较消耗系统资源,所以就引入了线程池技术,避免频繁的线程创建和销毁。线程池是一个抽象的概念,一般小型项目用不到,我也只能算是了解的水平,所以尽我所能的用一个简单的方式描述,懂得原理,真实使用的时候也就方便多了,开始了……线程池里有一些空的线程,这个数量是有...原创 2019-08-17 23:10:44 · 476 阅读 · 0 评论 -
C语言中的多线程简介
线程 Thread专业术语称之为程序执行流的最小单元。线程是不会执行程序的,可以理解成线程就是一个载体,将 要执行的代码 运送到CPU进行处理。多线程就是多个线程同时并发执行。(注意并发与并行的区别,并行同时执行不同的任务,并行是交替执行不同的任务。)1,为什么要用多线程?1)避免阻塞单个线程中的程序,是按照顺序执行的,排在前面的程序如果发生异常卡住(阻塞),会影响到后面......原创 2019-08-17 21:21:40 · 14408 阅读 · 8 评论