3
我想教一些學生,在下面的情況下,您應該通過引用傳遞,否則對象將被複制。如果您不通過引用將對象傳入函數,會出現什麼問題
注意:他們還不知道複製構造函數,所以如果可能的話,我不想在示例中提及它們。
int sumOfSizes(CObject const & a, CObject const & b)
{
return a.getSize() + b.getSize();
}
任何人都可以幫助我一個現實世界的例子,其中總和事實上不是預期的嗎?
這樣的例子可能表明'CObject'設計不好。 – 2011-05-19 10:59:06
這兩個參數應該是CObject常量& – 2011-05-19 10:59:35
主要參數是性能,不正確,不是嗎?假設每個CObject包含一百萬個字符串 - 複製只是爲了確定大小將是一個壞主意。 – 2011-05-19 11:01:05