class aa(const a& other) :
m_a(other.m_a)
int& get_a()
a& get_class()
};
void solve()
output:a()a(const a&)
0
從output可以看出,auto 自動推導了 a t = _a.get_class(),故呼叫了class a的拷貝建構函式
void solve()
output:a()2
可以看出 auto& 推導出了 a& t = _a.get_class(),這樣我們就知識對返回的例項引用的操作,節省了額外的開銷
總結,對於 auto 的使用,我們得注意是否加&或者在該情況下auto可能推導出的型別是不是會重新拷貝乙個副本而導致記憶體的申請
a& get_class() const錯誤 c2440 「return」: 無法從「const a」轉換為「a &」
const a& get_class() const
正確
關於JSTL中使用EL的乙個小細節
最近的乙個專案中,使用到了jstl標籤和el表示式,希望盡量的擺脫用scrilplet的習慣,使專案的 更加優雅。哈!但在專案開發的過程中,碰到了一些小細節,不得不要注意。其中的乙個是jstl中使用el的時候,在乙個沒有注意的小地方,得不到預期的輸出結果,還令我花費了整整一天多的時間來debug,這...
Junit的乙個小細節
junit的測試時,如果乙個類中有多個jt那麼,jt的執行順序是隨機的,這存在隱患,例如增查刪三個方法的正確順序是 增 查 刪,這個時候可以在類上面新增 fixmethodorder methodsorters.name ascending 表明按照方法的名字來 publicclass produc...
firebug 中的乙個小細節
我們用firebug除錯js程式時,dir出來的函式體會出現幾種顏色 1 black 代表函式變數 包括var定義的字串變數,this.定義的變數內部變數,等等非函式變數 2 green 代表函式 prototype中的函式,靜態函式,所有函式 3 red prototype 被修改時出現,一般情況...