简介:引用是支持运算符重载语法的基础,也为函数参数的传入和传出控制提供了便利;拷贝构造函数;成员指针;
11.1 C++中的指针
C++对类型要求更为严格
11.2 C++中的引用
应用要点:任何引用必须和存储单元联系。访问引用时,就是在访问那个存储单元。
可以把引用当作一个奇特的指针:不必怀疑它是否被初始化了,也不必知道怎样对它间接引用。
规则:
1. 当引用被创建,它必须被初始化。
2. 一旦一个引用被初始化为指向一个对象,它就不能改变为另一个对象的引用。
3. 不可能有NULL引用。
传值方式需要调用构造函数和析构函数,然而如果想改变参数,则可通过常量引用传递,它仅需要将地址压栈。
11.3 拷贝构造函数
仅当准备用按值传递的方式传递类对象是,才学要拷贝构造函数。
防止按值传递:
NoCC(const NoCC&)
当自己没有创建一个拷贝构造函数时,编译器将自动地生成拷贝构造函数。所生成的拷贝构造函数将对基本类型执行位拷贝,而对用户定义的类型执行拷贝构造函数。
11.4 指向成员的指针
指针是指向一些内存地址的变量,既可以是数据地址也可以是函数地址。
成员指针是受限制的,它们仅能被指定给在类中的确定位置,但不能像使用普通指针那样增加或比较成员指针。
网友评论