![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
下一页盛夏花开
每天都在学习,每天都是新手
展开
-
c++通用模板类(template class)定义实现详细介绍
原文地址:有时,有两个或多个类,其功能是相同的,仅仅是数据类型不同,如下面语句声明了一个类: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 class Compare_int ...转载 2018-08-10 16:29:40 · 23102 阅读 · 1 评论 -
MessageBox深入研究
总结的特别好,所以打算记录下来原文地址:https://blog.csdn.net/AcceZn/article/details/54670776MessageBox是最简单的图形界面交互API之一,只需要指定标题、正文、样式就可以弹出一个简单的对话框,而不需要指定消息处理例程,也不需要消息循环。然而Windows是一个复杂的操作系统,绝大多数的API的功能不可能简单实现,MessageB...转载 2018-08-14 11:34:31 · 1189 阅读 · 0 评论 -
MessageBox的常用方法
原文地址:https://www.cnblogs.com/chenhailong/p/5650936.html 一 函数原型及参数 function MessageBox(hWnd: HWND; Text, Caption: PChar; Type: Word): Integer; hWnd:对话框父窗口句柄,对话框显示在Delphi窗体内,可使用窗体的Handle属性,否则可用0,使...转载 2018-08-14 13:25:01 · 210 阅读 · 0 评论 -
C++11并发编程-条件变量(condition_variable)详解
总结的很详细,打算记录下来。原文地址:https://www.2cto.com/kf/201506/411327.html头文件主要包含了与条件变量相关的类和函数。相关的类包括 std::condition_variable和 std::condition_variable_any,还有枚举类型std::cv_status。另外还包括函数 std::notify_all_at_thread...转载 2018-08-16 17:28:16 · 88954 阅读 · 2 评论 -
使用boost中的multi_index
原文地址:http://blog.chinaunix.net/uid-28595538-id-5059349.html这篇文章简单介绍一下 boost 中十分实用的库函数 --- 多重索引 multi_index ,它的底层结构是用来存放 结构体的 map 的数据结构,但不同于 stl,boost 中普通的map,它可以根据用户的需要来指定索引的类型,即 key 的值可以根据需要的不同而变化...转载 2018-08-24 15:17:34 · 871 阅读 · 0 评论 -
[HengStar-Boost讲堂]多索引容器multi_index_container实战
原文地址:http://blog.csdn.net/gongxinheng/archive/2010/03/27/5421914.aspxby: HengStar2010/3/27 什么是多索引容器?为什么要使用它?如何使用? 接下来一一回答以上的问题。 想必大家在实际开发中一定多多少少会遇到以下的问题,我需要创建一个map,并且需要两种方式去索引,...转载 2018-08-24 16:34:19 · 191 阅读 · 0 评论 -
ntohs, ntohl, htons,htonl的比较和详解
转载地址:https://blog.csdn.net/haoxiaodao/article/details/73162663在C/C++写网络程序的时候,往往会遇到字节的网络顺序和主机顺序的问题。 这时就可能用到htons(), ntohl(), ntohs(),htons()这4个网络字节顺序与本地字节顺序之间的转换函数: htonl()--"Host to Network Lo...转载 2018-11-26 16:02:00 · 245 阅读 · 0 评论 -
c++中的左移、右移运算
转载地址:https://blog.csdn.net/cx_12586/article/details/72961602今天在看X264的源代码时,发现里面大量应用了">>"运算符,看书的时候注意过这个细节,不过在工作中一直没有用到,也没记住。重新查了K&R,里面说无符号数的移位总是用0填充,而对于有符号数,"<<"是用0填充的,“>>”则与机器的具...转载 2018-12-12 14:33:46 · 8726 阅读 · 0 评论 -
std::map::erase的用法及陷阱
转载地址:https://blog.csdn.net/bizer_csdn/article/details/53160666方法一:[cpp] view plaincopystd::map<std::string, std::string > mapTest; bool TestVal(const std::string & val); .......转载 2019-01-17 16:16:40 · 6226 阅读 · 1 评论 -
#ifdef中的逻辑与或操作(多重判断)
转自:http://blog.csdn.net/davidhsing/article/details/8115121 原本用宏定义包起来的代码类似如下: [cpp] view plaincopyprint? #ifdef A //... #endif // A 现在要加入一个宏定义 B,实现类似这样的条件判断(显然实际上这样...转载 2019-04-10 15:15:34 · 9916 阅读 · 0 评论 -
诸如(123456>>8) & 0xFF这类
转载地址:https://blog.csdn.net/iamgamer/article/details/79354617其中有两个位运算,一个是>>,一个是&。0xff的作用一: 十六进制0xff的长度是一个字节,即八位,二进制为:1111 1111,那么一个 8bit 数与1111 1111与运算还是这个数本身,但是一个16bit 数与 0xff就被截断了...转载 2019-07-03 10:34:30 · 913 阅读 · 0 评论 -
线程中CreateEvent、SetEvent、WaitForSingleObject的用法
原文地址:https://www.cnblogs.com/MrYuan/p/5238749.html首先介绍CreateEvent是创建windows事件的意思,作用主要用在判断线程退出,线程锁定方面.CreateEvent函功能描述:创建或打开一个命名的或无名的事件对象.EVENT有两种状态:发信号,不发信号。 SetEvent/ResetEvent分别将EVENT置为这两种...转载 2018-08-10 15:01:47 · 376 阅读 · 0 评论 -
boost智能指针-boost::share_ptr(使用原理以及分析)
原文地址:https://www.cnblogs.com/helloamigo/p/3575098.html简介 boost::shared_ptr是可以共享所有权的指针。如果有多个shared_ptr共同管理同一个对象时,只有这些shared_ptr全部与该对象脱离关系之后,被管理的对象才会被释放。通过下面这个例子先了解下shared_ptr的基本用法: 1 #incl...转载 2018-08-01 17:10:15 · 1554 阅读 · 0 评论 -
拷贝构造函数和赋值函数
class CExample{public: CExample(){pBuffer=NULL; nSize=0;} ~CExample(){delete pBuffer;} void Init(int n){ pBuffer=new char[n]; nSize=n;}private: char *pBuffer; //类的对象中包含指针,指向动态分配的内存资源 i转载 2017-07-10 14:14:28 · 208 阅读 · 0 评论 -
Static在C和C++中的用法和区别
static主要有三个作用: (1)局部静态变量(2)外部静态变量/函数(3)静态数据成员/成员函数前两种C和C++都有,第三种仅在C++中有,下面分别作以下介绍:一、局部静态变量 在C/C++中, 局部变量按照存储形式可分为三种auto, static, register。其中register不常用到,下面主要说说auto和stat转载 2017-07-18 16:37:44 · 551 阅读 · 0 评论 -
c++虚函数的内存模型
前言大家都应该知道C++的精髓是虚函数吧? 虚函数带来的好处就是: 可以定义一个基类的指针, 其指向一个继承类, 当通过基类的指针去调用函数时, 可以在运行时决定该调用基类的函数还是继承类的函数. 虚函数是实现多态(动态绑定)/接口函数的基础. 可以说: 没有虚函数, C++将变得一无是处!既然是C++的精髓, 那么我们有必要了解一下她的实现方式吗? 有必要! 既然C++是从C语言转载 2017-07-19 15:18:29 · 439 阅读 · 0 评论 -
c字符串、string对象、字符串字面值的区别
一、字符串字面值字符串字面值是一串常量字符,字符串字面值常量用双引号括起来的零个或多个字符表示,为兼容C语言,C++中所有的字符串字面值都由编译器自动在末尾添加一个空字符。字符串没有变量名字,自身表示自身"Hello World!" //simple string literal"" //empty string literal"\nCC\toptions\tfile.转载 2017-08-16 17:04:09 · 549 阅读 · 0 评论 -
MFC显示颜色选择对话框
其实很简单,使用MFC现有的类CColorDialog 即可实现核心代码如下: 1 void CCColorDialogView::OnGraphSetting() 2 { 3 CColorDialog m_setClrDlg; 4 m_setClrDlg.m_cc.Flags |= CC_FULLOPEN|CC_RGBINIT; // CC_RGBI转载 2017-08-10 11:34:40 · 2145 阅读 · 4 评论 -
关于C中指针的引用,解引用与脱去解引用
*,& 在指针操作中的意义 (1)* 大家都知道在写int *p 时,*可以声明一个指针。很少人知道*在C/C++中还有一个名字就是“解引用”。他的意思就是解释引用,说的通俗一点就是,直接去寻找指针所指的地址里面的内容,此内容可以是任何数据类型,当然也可以是指针(这就是双重指针,后面将会讨论)。需要注意的是,在变量声明的时候,*不能当做解引用使用,只是表示你声明的变量是一个指针类转载 2017-08-11 11:16:05 · 591 阅读 · 0 评论 -
C,C++头文件的区别和联系
iostream是C++的头文件,iostream.h是C的头文件,即标准的C++头文件没有.h扩展名,将以前的C的头文件转化为C++的头文件后,有时加上c的前缀表示来自于c,例如cmath就是由math.h变来的。iostream.h里面定义的所有类以及对象都是在全局空间里,所以你可以直接用cout 但在iostream里面,它所定义的东西都在名字空间std里面,所以你必须加上转载 2017-08-23 15:54:33 · 528 阅读 · 0 评论 -
C++静态成员函数和静态数据成员
转自:http://blog.csdn.net/janeqi1987/article/details/74315935当将类的某个数据成员声明为static时,该静态数据成员只能被定义一次,而且要被同类的所有对象共享。各个对象都拥有类中每一个普通数据成员的副本,但静态数据成员只有一个实例存在,与定义了多少类对象无关。静态方法就是与该类相关的,是类的一种行为,而不是与该类的实例对象相关。转载 2017-09-25 15:55:03 · 267 阅读 · 0 评论 -
C++虚基类构造函数详解(调用顺序)之一
解释某个函数,我通常的讲解不会先去长篇大论去空谈,先整个例子来看看!!走起....#include #include string>using namespace std;class A{public: A(const char*s) { coutendl; }};class B:virtual public A{public:转载 2017-09-25 21:09:06 · 1206 阅读 · 0 评论 -
std::string用法总结
文章转载自:“https://blog.csdn.net/lanyzh0909/article/details/6957649”在平常工作中经常用到了string类,本人记忆了不好用到了的时候经常要去查询。在网上摘抄一下总结一下,为以后的查询方便:string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c);...转载 2018-07-30 17:43:43 · 57459 阅读 · 0 评论 -
在C++中什么时候需要加上std::
原文地址:https://blog.csdn.net/tong_xin2010/article/details/19490555 https://zhidao.baidu.com/question/302553183.html文章写的很透彻,想保存下来供以后查看方便std::是命名空间,你所用到的很多函数或者类都是被放到命名空间里面的,命名空间是防...转载 2018-08-01 11:11:19 · 4818 阅读 · 0 评论 -
虚继承与虚基类的本质(介绍的非常详细)
虚继承与虚基类的本质 虚继承和虚基类的定义是非常的简单的,同时也是非常容易判断一个继承是否是虚继承的,虽然这两个概念的定义是非常的简单明确的,但是在C++语言中虚继承作为一个比较生僻的但是又是绝对必要的组成部份而存在着,并且其行为和模型均表现出和一般的继承体系之间的巨大的差异(包括访问性能上的差异),现在我们就来彻底的从语言、模型、性能和应用等多个方面对虚继承和虚基类进行转载 2017-06-28 13:48:58 · 292 阅读 · 0 评论