簡介:引用是支持運算符重載語法的基礎,也為函數(shù)參數(shù)的傳入和傳出控制提供了便利;拷貝構造函數(shù);成員指針;
11.1 C++中的指針
C++對類型要求更為嚴格
11.2 C++中的引用
應用要點:任何引用必須和存儲單元聯(lián)系。訪問引用時,就是在訪問那個存儲單元。
可以把引用當作一個奇特的指針:不必懷疑它是否被初始化了,也不必知道怎樣對它間接引用。
規(guī)則:
1. 當引用被創(chuàng)建,它必須被初始化。
2. 一旦一個引用被初始化為指向一個對象,它就不能改變?yōu)榱硪粋€對象的引用。
3. 不可能有NULL引用。
傳值方式需要調用構造函數(shù)和析構函數(shù),然而如果想改變參數(shù),則可通過常量引用傳遞,它僅需要將地址壓棧。
11.3 拷貝構造函數(shù)
僅當準備用按值傳遞的方式傳遞類對象是,才學要拷貝構造函數(shù)。
防止按值傳遞:
NoCC(const NoCC&)
當自己沒有創(chuàng)建一個拷貝構造函數(shù)時,編譯器將自動地生成拷貝構造函數(shù)。所生成的拷貝構造函數(shù)將對基本類型執(zhí)行位拷貝,而對用戶定義的類型執(zhí)行拷貝構造函數(shù)。
11.4 指向成員的指針
指針是指向一些內(nèi)存地址的變量,既可以是數(shù)據(jù)地址也可以是函數(shù)地址。
成員指針是受限制的,它們僅能被指定給在類中的確定位置,但不能像使用普通指針那樣增加或比較成員指針。