加载中
初识RTTR库

C++反射库 https://github.com/rttrorg/rttr 反射实现数据类型的转换 获取结构体字段的属性 值 类型 方法 作用一: 数据库操作结构体通过字段名获取 https://github.com/rttrorg/rttr/blob/m...

2022/06/28 20:23
1K
c++11 路径字符串小坑(三脚猫)

路径还有空格的时候比如一些数据库的舒适化 文件的㝍操作 如果正常处理就会保留该文件路径的空格以前的字符串作为路径进行处理 比如E:/DD _test/ E:/DD实际路径 怎么处理 常量转移 std::sti...

2022/05/30 20:08
190
C++11 字符串大小写快速转换

toupper小到大 tolower大到小 transform(str.begin(), str.end(), str.begin(), toupper);

c++
2022/03/08 16:35
376
asio 定时器如何执行取消操作

cancel接口在执行后 如果已经启动了异步等待则会主动调用到callback 这个时候我们需要在cancel 保存一下m_cancel状态 void onTimer(const asio::error_code& ec) { //如果定时器已经被取消就...

2022/03/03 17:18
197
C++11 常用编程小技巧-成员函数指针模板

/*使用场景 * 成员函数指针模板,减少重复代码 */ //模板实例化 case OpcUaType_Boolean: getArray<UaBoolArray, OpcUa_Boolean, &UaVariant::setBoolArray, &UaVariant::toBool>(&uaXmlEle...

2022/01/22 20:40
213
C++常用编程小技巧-001

--------为什么析构函数必须是虚函数,为什么默认析构函数不是虚函数 1、虚函数可以在释放内存自动找到某一层子类释放 2、默认如果是虚函数就增加了虚函数表和虚指针,浪费内存。当一个类不会...

2022/01/20 17:52
42
静态库和动态库基础

静态库对函数库的链接是放在编译时期完成的。 程序在运行时与函数库再无瓜葛,移植方便。 浪费空间和资源,因为所有相关的目标文件与牵涉到的函数库被链接合成一个可执行文件。 内存中存在多...

2022/01/12 19:04
57
C++模版特例化和模版偏特化

模板: template<class T1,class T2> class Test { public: Test(T1 a, T2 b):_a(a),_b(b) { cout << "模板化" << endl; } private: T1 _a; T2 _b; }; 全特化就是讲模板覆盖不到的类型重新声...

c++
2022/01/11 17:51
51
C++11 四种智能指针

指针类别 支持 备注 unique_ptr C++ 11 拥有独有对象所有权语义的智能指针 shared_ptr C++ 11 拥有共享对象所有权语义的智能指针 weak_ptr C++ 11 到 std::shared_ptr 所管理对象的弱引用 au...

c++
2022/01/05 17:12
52
sdplog日志二次开发

C++高性能日志库 跨平台 特性: skins组合:实现控制台和文件同时输出,控制台颜色显示 滚动文件输出:N个文件,每个文件大小达到XXMB自动增量,如果个数达到总数则覆盖第一个。 混合fmt做日...

c++
2021/11/05 22:05
364
Boost asio IO多路复用

设计思路 多个链路对应一个IO 多个是几个 所有串口用一个IO TCP每10个用一个IO 总IO个数-CPU核数。 最优方案: 多个task/thread对应一个IO,IO总个数是=cpu core数。 https://www.cnblogs.co...

2021/11/01 21:12
679
公共库封装技巧之pimpl

“指向实现的指针”或“pImpl”是一种 C++ 编程技术[1],它通过将类的实现细节从其对象表示中移除,将它们放在一个单独的类中,通过一个不透明的指针访问 既:通过实例调用impl 屏蔽实现细节...

c++
2021/10/28 21:21
93
公共库发布技巧之header only

In the context of the C or C++ programming languages, a library is called header-only if the full definitions of all macros, functions and classes comprising the library are vis...

2021/10/28 21:17
305
公共库开发设计技巧

--------屏蔽一个class的技术 pimpl class COMMONFUN_EXPORT Book { public: Book(); ~Book(); void print(); private: class BookImpl; BookImpl* pimpl; }; class Book::BookImpl { publi...

2021/10/27 16:11
46
C/C++ warning C4251 需要有 dll 接口由 class“..” 的客户端使用

第一种: 无视它或者#pragma warnind( disable: 4251 ) 第二种:将该数据改为指针方式: class __declspec( dllexport ) Test { public: std::vector<int>* m_objCon; }; 然后在构造函数和析...

c++
2021/10/25 19:50
985
C++ 单利模式保护

class XXX { private: //构造函数 XXX(); public: //拷贝构造 XXX(XXXconst&) = delete; //赋值拷贝 XXX& operator=(XXXconst&) = delete; = delete禁止使用 private禁止构造......

c++
2021/10/25 18:57
17
C++17代码编译采坑记录

*******************************error1 /*support C++17 compile error C2872 : “byte”: 不明确的符号 compile error duchuan https://blog.csdn.net/caimouse/article/details/106047569...

c++
2021/10/14 10:05
1.6K
C++ 六大设计原则复习

--------单一职责 class 模块尽量 功能单一 逻辑简单可读性高 --------开闭原则 鼓励增加、扩展接口 不允许修改 已有代码实现 新需求 抽象类设计的越合理 该特性越鲜明 --------里氏替换原则...

c++
2021/08/27 16:01
104
C++11 override关机键字

用于子类重写基类的标识,更容易在子类中识别重写的方法 class CTestBase virtual int doFun(){}; class CTestPA :CTestBase virtual int doFun() overridev {};......

c++
2021/08/27 15:33
13

没有更多内容

加载失败,请刷新页面

返回顶部
顶部