程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> c++-復制構造函數的形參,常引用

c++-復制構造函數的形參,常引用

編輯:編程解疑
復制構造函數的形參,常引用

C++中,復制構造函數為什麼要用“常引用”作形參,而不是“引用”?謝謝啦

最佳回答:


復制構造函數中不能修改的內容,是p的成員變量,即p.pointer的值。也就是說,你不能使p.pointer指向別的位置。即下面這段代碼會報錯:

Pstu(const Pstu& p)
{
pointer = p.pointer;
p.pointer = NULL; //這句代碼會報錯
cout << "此時count為:" << (*pointer).count << endl;
(*pointer).count++;
cout << "Pstu1" << endl;
cout << "此時count為:" << (*pointer).count << endl;

}

const只能保護到這一層,至於你再去修改pointer所指向的變量的值,const是保護不了的。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved