随笔分类 - C++
摘要:成员变量指针 静态成员变量、静态成员函数与对象无关,静态成员指针与普通指针一致 本质就是特定成员变量在对象实例中的相对地址,解引用时再根据调用对象的地址计算该成员变量的绝对地址 定义 类型 类名 ::* 成员变量指针 = &类名 ::成员变量 使用 对象.*成员变量指针\对象指针->*成员变量指针
阅读全文
摘要:指针、引用必须注意浅深拷贝浅拷贝:只复制地址,没复制值缺省方式的拷贝构造和拷贝赋值,对包括指针在内的基本成员变量按字节赋值,导致浅拷贝问题。为了获得完整意义上的对象副本,必须自己定义拷贝构造和拷贝赋值,针对指针型成员变量做深拷贝。赋值表达式的值是操作符左值的引用。运算符重载的返回值都是自引用形式(r...
阅读全文
摘要:为避免成员函数修改成员变量,则可将成员函数定义为常函数.格式如下。void function_name ( void )const{}若成员变量是mutable 关键字(去常const_cast)修饰的,则在函数中允许更改常对象调用常函数,非常对象调用非常函数。常函数与非常函数可重载(this指针类...
阅读全文
摘要:构造函数初始化列表是以一个冒号开始,接着是一个以逗号分隔的数据成员列表,每个数据成员后面跟一个放在圆括号里的初始化式。---没有默认构造函数的类类型的成员,以及const或引用类型的成员,不管是哪种类型,都必须在构造函数初始化列表中进行初始化。---每个成员在构造函数初始化列表中只能指定一次,构造函...
阅读全文
摘要:访问控制符只作用于类,而非作用于对象,因此,同一个类的不同对象,可以互相访问非公有部分。构造函数 --缺省构造函数 即无参构造函数,但并非真正没有任何参数,为有参构造函数的每个参数提供缺省值,同样是无参构造函数的效果; 编译器会给没有定义构造函数的类,提供缺省的构造函数。只要类中已定义...
阅读全文
摘要:引用即为变量的别名,与变量指向同一个地址,且值一改都改.在实现上,引用用指针来实现的。引用在定义时必须赋予初值,有所依附。且,不能让一个引用引用引用。引用不是实体,引用本身并不占用内存空间。有引用指针的引用(int * & r=p),没有指向引用的指针(int &* =&p);有数组引用(int (...
阅读全文
摘要:C++中使用new/delete用来动态分配、回收内存空间。#includeusing namespace std;int main() { int * pi = new int; cout << (void*)pi << endl; *pi = 12...
阅读全文
摘要:重载 --同一作用域中,函数名相同,参数表不同的函数 -- 只有同一作用域中的同名函数才涉及重载问题,不同作用域中同名函数遵循标识符隐藏原则重载解析 --完全匹配 > 常量转换 > 升级转换 > 标准转换 > 自定义转换 > 省略号匹配函数指针的类型决定其匹配的重载版本#includeusin...
阅读全文
摘要:布尔类型bool,但字节整数,只能表示真、假,即 1、0.布尔类型的右值可以是任何变量的值,但最终都会转化为1、0.可以用boolalpha来表达布尔类型的字面值。#includeusing namespace std;int main() { bool b= true; ...
阅读全文

浙公网安备 33010602011771号