第十一章 引用和拷贝构造函数

2017-03-20  本文已影响0人  意不适

简介:引用是支持运算符重载语法的基础,也为函数参数的传入和传出控制提供了便利;拷贝构造函数;成员指针;

11.1 C++中的指针

C++对类型要求更为严格

11.2 C++中的引用

应用要点:任何引用必须和存储单元联系。访问引用时,就是在访问那个存储单元。

可以把引用当作一个奇特的指针:不必怀疑它是否被初始化了,也不必知道怎样对它间接引用。

规则:

1. 当引用被创建,它必须被初始化。
2. 一旦一个引用被初始化为指向一个对象,它就不能改变为另一个对象的引用。
3. 不可能有NULL引用。

传值方式需要调用构造函数和析构函数,然而如果想改变参数,则可通过常量引用传递,它仅需要将地址压栈。

11.3 拷贝构造函数

仅当准备用按值传递的方式传递类对象是,才学要拷贝构造函数。

防止按值传递:

NoCC(const NoCC&)

当自己没有创建一个拷贝构造函数时,编译器将自动地生成拷贝构造函数。所生成的拷贝构造函数将对基本类型执行位拷贝,而对用户定义的类型执行拷贝构造函数。

11.4 指向成员的指针

指针是指向一些内存地址的变量,既可以是数据地址也可以是函数地址。

成员指针是受限制的,它们仅能被指定给在类中的确定位置,但不能像使用普通指针那样增加或比较成员指针。

上一篇 下一篇

猜你喜欢

热点阅读