banner
cells

cells

为美好的世界献上 bug

cpp

C++ 伪闭包
伪闭包 闭包允许函数捕获并携带其作用域中的变量,在闭包定义的作用域已经结束,这些变量仍然可以通过闭包访问,闭包也可以推迟操作,减少代码冗余。 与智能指针配合延长对象的生命周期。 Copy class A {}; int foo() { std::shared_ptr<A>…
关于指针常量与常量指针
指针常量 Copy int *const ptr = nullptr; const 修饰的是指针 ptr 的值,ptr 本身不能被修改,所以指针常量必须初始化,同时我们无法对 ptr 的值进行修改。 Copy int a = 10; int *const ptr = &a; ptr…
预定义宏
预定义宏是由编译器提供的宏定义。 编译器相关的宏 不同的编译器提供自己的一套预定义宏。 GCC __GNUC__:GCC 的主版本号。 __GNUC_MINOR__:GCC 的次版本号。 __GNUC_PATCHLEVEL__:GCC 的补丁级别号。 Clang __c…
cover
cover

CMake 记录

对于一个项目结构: Copy . ├── CMakeLists.txt ├── func │ ├── CMakeLists.txt │ ├── include │ │ └── func.h │ ├── lib │ │ └── libfunc_lib.a…
命名空间那些坑
命名空间 & 源文件 观察以下代码: Copy // current_thread.h #ifndef _CURRENT_THREAD_H_ #define _CURRENT_THREAD_H_ namespace mymuduolib { namespace…
cover

虚函数机制

静态绑定 C++ 中函数的默认绑定是静态绑定,也称为早绑定和编译期绑定。 静态绑定将函数的查找、关联的过程放在编译期间完成,可以提升程序的运行时的性能。 动态绑定 Copy #include <iostream> class Base { public: void foo…
此部落格數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。