
C++
文章平均质量分 54
youtherzhang
这个作者很懒,什么都没留下…
展开
-
C++类和接口的设计原则探讨
http://www.warting.com/program/201208/53517.html我这篇文章的主旨是介绍一部分类和接口的高质量设计的准则。这些准则不但应该保证设计并且实现的类或者接口本身有高质量代码,而且更重要的是在工业领域应该尽可能的使代码的更新和维护不影响客户的活动,主要也就是保持二进制代码兼容(binary compatibility)和源代码兼容(source com转载 2017-05-11 09:56:20 · 476 阅读 · 0 评论 -
使用Boost ASIO的线程池?
转 https://cloud.tencent.com/developer/ask/41090试图使用Boost:#include <boost/asio.hpp>#include <iostream>#include <boost/thread/thread.hpp>#include <boost/bind.hpp>#includ...转载 2018-07-20 09:49:39 · 3425 阅读 · 0 评论 -
"格式描述串"是由一系列的"格式转换说明符号"组成,格式转换说明符号的描述形
http://bbs.bccn.net/thread-88458-1-1.html"格式描述串"是由一系列的"格式转换说明符号"组成,格式转换说明符号的描述形式如下:% [+][-] 0 m[.n] [输出精度] <形式字母>(1)形式字母:制定输出格式,如表d:十进制整型数i:十进制整型数x:十六进制整型数o:八进制整型数u:无符号十进制整型数c:单个字符;s:字符串e:指数形式的浮...转载 2018-03-29 11:36:28 · 372 阅读 · 0 评论 -
“BOOLEAN”: 重定义;不同的基类型 ”问题 rpcndr.h(147) : error C2632: “char”后面的“int”非法
“BOOLEAN”: 重定义;不同的基类型 ”问题 (2013-04-24 18:11:10)转载▼标签: it分类: Collect遇到的问题:1>正在编译...1>Main.cpp1>e:\program\visual studio 2005\vc\platformsdk\include\rpcndr.转载 2017-10-17 15:59:58 · 5835 阅读 · 1 评论 -
多线程 变量 加锁问题
对于x86来说如果其地址是4字节对齐的,那访问是就原子操作。这也是最常见的情况,注意访问是读或写,不是自增等。如果你有个这样的结构体,还禁用了对齐的话那就不是了。struct S{ char a; int b;};http://www.xuebuyuan.com/2214900.html对于多线程编程,很多人概念不清,写代码的时候要么是处处加锁,影响性能不说,还容易莫名转载 2017-07-25 18:33:34 · 9417 阅读 · 0 评论 -
转shared_ptr的小文 ,shared_ptr 赋值为a, 再赋值为b, a 的引用会减1, b 的引用加1
转一篇shared_ptr的小文原文地址:http://euyuil.com/2344/ 在最近的期中项目“牛奶”里,我大量运用了共享指针。虽然这是一种偷懒的表现,但是对于这个“模拟牛奶生产过程”的项目来说,我们并不在乎它对效率产生的影响。题外话说完后,说说共享指针。共享指针 (shared_ptr) 是现在的 Boost 库中提供的,并且应该是将来 C++1x转载 2017-06-14 18:10:22 · 5677 阅读 · 1 评论 -
for循环 前置++ 和 后置++
http://bbs.youkuaiyun.com/topics/30253911楼上有人说对了,也有人说错了,这两个用在for循环中效果是相同的,效率取决于i的类型,如果是int等内置类型,没什么错误,但对于用户自定义类型重载的++如最常见的iterator则++i效率要高一些。转载 2017-07-04 19:35:18 · 2251 阅读 · 2 评论 -
析构函数 没定义函数体, 根据代码不同,有时候成功, 有时候 报error LNK2019: 无法解析的外部符号 和fatal error LNK1120: 1 个无法解析的外部命令
析构函数 没定义函数体, 当采用不同使用方式, 编译结果不一样:方式1 : CTest *Test3 = new CTest(); 链接成功, 此时如果加上 delete Test3 ; 会报 链接错误方式2: CTest Test4; 会报 链接错误。如果加上析构函数函数体测试, 对于方式1 ,当不调用delete, 离开作用域并没有调用构造函数。 方式2 离开作用域原创 2017-04-27 15:30:10 · 1572 阅读 · 0 评论 -
私有构造函数
发现私有构造函数, 直接创建对象会报 error C2248: 无法访问 private 成员. 而new 对象后赋值给 类的静态变量,就可以,参考 http://bbs.youkuaiyun.com/topics/90096087 ,大概知道了原因:如Test* Test::m_pSelf = new Test; 这样可以访问Test 的私有构造函数这句话属于类Test的作用域原创 2017-04-27 14:30:10 · 581 阅读 · 0 评论 -
C++析构函数 什么时候用虚函数
如果不需要基类对派生类及对象进行操作,则不能定义虚函数,因为这样会增加内存开销.当类里面有定义虚函数的时候,编译器会给类添加一个虚函数表,里面来存放虚函数指针,这样就会增加类的存储空间.所以,只有当一个类被用来作为基类的时候,才把析构函数写成虚函数.来源:http://www.cnblogs.com/lixiaohui-ambition/archive/2012/07/13/2589716.h转载 2017-04-27 13:27:38 · 793 阅读 · 0 评论 -
C++ new失败的处理
转自 http://www.cnblogs.com/avril/p/3175175.htmlC++ new失败的处理总体分两个部分,一个是:http://hi.baidu.com/bellgrade/item/179ff5374b74eef6e7bb7aa6 写的比较容易理解。另一个是 http://book.51cto.com/art/201202/31776转载 2017-05-25 17:11:03 · 728 阅读 · 0 评论 -
C++ API 设计 章节链接
http://www.aiuxian.com/article/p-1301505.html 第三章 模式前一章所讨论的品质是用来区分设计良好和糟糕的API。在接下来的几个章节将重点关注构建高品质的API的技术和原则。这个特殊的章节将涵盖一些有用的设计模式和C++ API设计 相关 的 相关 语言特性 习惯用法 。设计模式是一种为共同的软件设计问题而采用的通用解决方案转载 2017-05-11 11:46:30 · 1181 阅读 · 0 评论 -
C++设计模式——单例模式
http://www.jellythink.com/archives/82 问题描述现在,不管开发一个多大的系统(至少我现在的部门是这样的),都会带一个日志功能;在实际开发过程中,会专门有一个日志模块,负责写日志,由于在系统的任何地方,我们都有可能要调用日志模块中的函数,进行写日志。那么,如何构造一个日志模块的实例呢?难道,每次new一个日志模块实例,写完日志,再转载 2017-05-11 11:42:36 · 261 阅读 · 0 评论