![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
T_Sky
学习中。。。
展开
-
关于引用类型的成员变量
<br />1.引用类型的成员变量不能直接在构造函数里初始化,必须用到初始化列表,且形参也必须是引用类型。<br /> 2.凡是有引用类型的成员变量的类,不能有缺省构造函数。原创 2011-06-01 16:56:00 · 965 阅读 · 0 评论 -
关键字explicit
构造函数被声明为explicit,可以阻止他们被用来执行隐式类型转换,但他们仍可以被用来进行显式类型转换。 explicit的构造函数禁止编译器执行非预期的类型转换。 以下来自MSDN: This keyword is a declaration spe原创 2011-08-22 09:16:39 · 447 阅读 · 0 评论 -
匹配两层和三层嵌套的正则表达式
(]*>(]*>(]*>.*?|.)*?|.)*?|.)*? 三层嵌套div正则表达式。 (]*>.*?|.)*?两层嵌套正则表达式。转载 2011-10-27 16:51:05 · 1229 阅读 · 0 评论 -
头文件重复包含
使用 #ifndef INCLUED_A_H #define INCLUED_A_H . . . #endif//INCLUED_A_H 来避免头文件重复包含 那么多重包含的危险就被消除了。当头文件第一次被包含时,它被正常处理,符号INCLUED_A_H被定义为1。如果头文件被再次包含,通过条件编译,它的内容被忽略。符号INCLUED_A_H按照被包含头文件的文件名进行取名,原创 2011-11-28 11:42:08 · 532 阅读 · 0 评论 -
MFC如何避免重绘闪烁
只需要重写OnPaint()和OnEraseBkgnd(CDC* pDC)即可 OnPaint()代码如下: if (IsIconic()) { CPaintDC dc(this); // 用于绘制的设备上下文 SendMessage(WM_ICONERASEBKGND, reinterpret_cast(dc.GetSafeHdc()), 0); // 使图标在工作区矩形中居中原创 2012-01-16 09:53:57 · 1680 阅读 · 0 评论 -
C++日志类
该类主要实现按天来记录日志,同时日志文件超过规定大小时进行备份,多线程安全。 备份函数如下: void Logger::Rollover(std::string& filename) { RolloverFiles(filename); std::ostringstream source_oss; std::ostringstream target_oss; source_o原创 2011-10-28 09:39:52 · 865 阅读 · 0 评论 -
malloc()和calloc()
函数malloc()和calloc()都可以用来动态分配内存空间,但两者稍有区别。 1、 malloc()函数有一个参数,即要分配的内存空间的大小: void *malloc(size_t size); calloc()函数有两个参数,分别为元素的数目和每个元素的大小,这两个参数的乘积就是要分配的内存空间的大小。 void *calloc(size_t numElements,size原创 2012-03-10 09:29:33 · 385 阅读 · 0 评论