04 2024 档案

摘要:首先理解什么是RAII,RAII(Resource Acquisition Is Initialization)是C++中用来管理资源的生命周期的一种技术。 在 RAII 中,资源的获取和释放是在对象的构造函数和析构函数中完成的。当对象被创建时,它的构造函数被调用,从而获取资源;当对象超出作用域时, 阅读全文
posted @ 2024-04-24 22:55 EricLing0529 阅读(6) 评论(0) 推荐(0) 编辑
摘要:移动构造、移动赋值 C++11新增了移动语义新特性,移动语义允许在不复制数据的情况下转移资源的所有权。在这之前,对象通过拷贝构造函数或拷贝赋值运算符进行传递,发生大量的数据复制,导致性能下降。 以常用的string对象为例, #include <cstring> #include <iostream 阅读全文
posted @ 2024-04-23 22:31 EricLing0529 阅读(14) 评论(0) 推荐(0) 编辑
摘要:C++的编译器会给一个空的类提供六个函数 默认构造函数 析构函数 拷贝构造 拷贝赋值 移动构造 移动赋值 在提供构造函数时,编译器将不再提供默认构造。 这些函数在对象传参、返回对象、接收对象时会自动调用,所以有必要进行相应的优化,减少这种隐式调用。 以下面这段代码为例: #include <iost 阅读全文
posted @ 2024-04-21 11:45 EricLing0529 阅读(7) 评论(0) 推荐(0) 编辑
摘要:1. CPP编译链接过程 2. new和malloc区别,delete和free区别 3. 指针和引用 4. 左值引用和右值引用 5. const 6. 函数重载 7. 函数调用栈帧开辟过程 8. inline 内联函数 9. static关键字 10. 定义指向类的成员的指针 11. this指针 阅读全文
posted @ 2024-04-06 21:00 EricLing0529 阅读(62) 评论(0) 推荐(0) 编辑
摘要:cppcheck 如何使用 valgrind 如何使用 Sanitizer 如何使用 cppcheck cppcheck属于静态代码检查工具,能处理比较多的类型。 如何使用 # 分析目录 cppcheck <path to dir> # 分析单个文件 cppcheck <path to cpp fi 阅读全文
posted @ 2024-04-03 17:16 EricLing0529 阅读(122) 评论(0) 推荐(0) 编辑
摘要:coredump文件在调试程序时,能够快速将堆栈恢复到程序崩溃时的状态,对于代码调试很有帮助,尤其是对于哪些难以复现的bug。 在默认情况下,是不生成coredump文件的。 可以通过命令ulimit -c查看当前系统允许生成coredump文件的大小。默认情况下,返回0,表示不允许生成coredu 阅读全文
posted @ 2024-04-01 12:10 EricLing0529 阅读(148) 评论(0) 推荐(0) 编辑