C 引用和拷貝建構函式

2021-05-22 05:37:55 字數 794 閱讀 6425

1,c++中的指標

c++是一種型別要求更強的語言,不允許隨便把乙個型別的指標指派給另乙個型別。

2,c++中的引用

引用,就像自動被編譯器逆向引用的常量型指標。使用引用的規則:

a,必須初始化

b,一旦乙個引用被初始化為指向乙個物件,就不能被改變為對另乙個物件的引用。

c,不可能有null引用。必須確保引用和一塊合法的儲存單元關聯。

3,函式中的引用

函式引數中使用常量引用特別重要。因為函式也許會接受臨時的物件(函式返回值或使用者顯示創立的),臨時物件總是不變的。

c++中的指標引用

void increment(int*& i)

int* i=0;

increment(i);//執行後,指標i的值加4,指標i指向的值未變,都是常量0

4,拷貝建構函式

拷貝建構函式採用相同型別的物件引用為引數,從現有的類建立新類,當用傳值方式傳遞或返回乙個物件時,編譯器自動呼叫這個拷貝建構函式。

howmany2 f(howmany2 x){

print(x);

return x;

main(){

howmany2 h("2");//呼叫howmany2建構函式

howmany2 h2=f(h);//引數傳值,呼叫howmany2拷貝構造,生成新的物件tmp,用於函式f()內計算。返回值時,拷貝構造乙個新的物件,返回該物件的引用,作為h2物件。同時銷毀tmp物件。

f(h);//返回新拷貝構造物件returntmp時,由於f()返回值未被使用,直接銷毀returntmp物件

C 拷貝引用建構函式

class man using namespace std man man age 0 name null 以拷貝的方式初始化函式,指向自己類的乙個引用 man man const man it 對有引數的初始化函式分配記憶體 man man const char s,inti 析構函式 man m...

c 中的引用和拷貝建構函式

引用的規則 1 建立引用時必須進行初始化 指標可以在任何時候初始化 2 一旦乙個引用被初始化為指向乙個物件,它就不能改變為另乙個物件的引用 指標可以在任何時候指向兩乙個物件 3 不可能有null引用。必須確保引用是和一塊合法的儲存單元關聯。拷貝建構函式 從現有的物件建立新物件時,需要自己定義乙個建構...

c 建構函式和拷貝建構函式

c 中為什麼要使用建構函式?c 是從c演變過來的,c中存在的是結構體,例如 對點point struct point 但是對點的操作還要在外部使用函式來實現。c 中包括了成員屬性和成員方法,但是由於類的封裝性,不能像普通變數乙個對成員屬性就行初始化,所以使用建構函式。class point doub...