1樓:匿名使用者
這個臨時物件是a(1000)產生的,
並不是a作為臨時物件,a(1000)產生的物件又賦值給了a,臨時回物件用完就答
析構了。臨時物件一般是怎麼產生的呢,比如說你呼叫一個函式void fun(test a);假設我們這樣呼叫 fun(b);當呼叫的時候,往裡傳的這個b並不是真正的b,而是它會複製出一個和b一樣的物件,然後供這個函式使用,b不會因為函式裡邊東西的執行而改變,它複製出的這個和b一樣的東西就是臨時物件,函式執行完畢後進行析構。
臨時物件是什麼?
2樓:匿名使用者
在c++中,有三種情況會產生臨時物件:
(1)值參,如 int fun(int lhs, int rhs);
(2)const引用,如
(3)隱式轉換,如 void fun(string & rhs);
呼叫時: fun("sgsdgsd");
或者:char *str = "sgsdg";
fun(str);
呼叫時都會生成一個string型別的臨時物件。
3樓:匿名使用者
應該是作為函式引數傳入的時候的臨時生成的物件吧。
4樓:匿名使用者
就是當呼叫函式時,計算機臨時建立一個物件.並且在此函式結束時,會把此臨時物件返回並登出它在計算機中所佔空間.
關於c派生類中虛擬函式的問題,C 已經在派生類中重定義了抽象類中的純虛擬函式,為什麼還不讓我用派生類定義物件!?
如果是虛擬函式的話,在派生類中重新定義其函式體時,不會導致同名覆蓋.當用基類指標指向派生類物件並呼叫虛擬函式時,執行的是在派生類中重新定義的虛擬函式的函式體.虛擬函式必須要在基類用virtual修飾才能為虛擬函式,派生類若重定義該函專數,則無論是否有屬virtual關鍵字都是虛擬函式。你要判斷派生類...
C 中類的例項名(或物件名)是什麼
陣列名對bai應樓梯首臺階,對du象名對應一座山,臺階zhi 有順序dao,有一個首臺階,版便可 依次 上去,權山的結構雜亂無章,條條道路通峰頂,首地址對他一個入山口無法代表整座山,乾脆擴充套件一下讓它代表整座山,生活中表意詞語形形色色,程式語言也應該能有一點跟的山生活吧 我也沒有bai 好好思考這...
在C 中,我的問題關於 基類有同名成員引起的二義性這個知識點
我來試著回答一下,大家看看是不是這樣 1.原本語句列印 在a1中 這個應該不用解釋,這個時候只有a1中存在print方法。2.增加a2 print 函式後,由於a2繼承a1所以a2 print 函式覆蓋 overwritten a1 print 函式,所以這種情況下,對於a2及a2的所有子類的例項來...