
成员变量
static成员变量需在类外定义(非const非inline),conststatic整型可类内声明但取地址仍需类外定义,C++17起推荐用inlinestatic统一解决定义与初始化问题。
c_str()返回的指针不能长期持有,因其不拥有内存所有权,有效性依赖原string的生命期和未修改状态,一旦string析构、移动或修改即悬空;必须用于需null-terminated字符串的CAP...
C++类定义必须显式声明访问控制符,否则默认private;最小可用类需含public:及成员;对象实例化语法多样,Personp()是函数声明而非对象定义;成员函数内直接访问成员变量,同名时用thi...
cereal更轻量、头文件即用,Boost功能全但需编译;核心是为类定义serialize函数并选择对应归档类型(JSON/二进制/XML)执行序列化与反序列化。
有理数类通过分子分母存储分数,重载运算符实现加减乘除与比较,结合约分和最大公约数确保精度,避免浮点误差,支持如Rational(1,2)+Rational(1,3)输出"5/6"的...
const管可变性,static管存储期与链接属性;二者维度不同,可共存但不可互替,如staticconst仅表示静态存储+只读,非编译期常量。
this指针是C++中隐含在非静态成员函数中的指向调用对象的常量指针,用于访问当前对象的成员变量、实现链式调用和传递自身引用,其不占用对象内存且在const成员函数中具有更严格的类型限制。
static限制链接为内部,仅本文件可见;extern声明外部定义,支持跨文件访问;二者互斥,不可共用;默认全局变量具外部链接;const全局变量在C++17前默认internallinkage。
C++继承通过public、protected、private控制基类成员在派生类中的访问级别:public继承保持原访问性,体现is-a;protected继承将public/protected降为...
非静态成员函数能直接访问成员变量是因为编译器隐式传入this指针,等价于this->value=10;静态成员函数无this,不可访问非静态成员;同名时须显式写this->;const成员...