如另一篇文章裡所說:
error: there are no arguments to 『size『 that depend on a template parameter, so a declaration of 『si_qq_26189301的部落格-csdn部落格
我在使用編寫stack類模板的時候,繼承了自定義的vector模板類。
然而在編譯的時候出錯了。
在編譯的時候,一開始使用的vs的編譯器,執行正常,沒有問題。
當換成gnu的編譯器時,編譯出錯了。
完整錯誤資訊如下:
百思不得其解。看前面的說明是缺少模板實參?
看到後面有個說明:
即 用this->push_back() 代替 push_back()
原來,在使用模板繼承的時候,如子類中有呼叫父類的成員函式和變數的情況,則需要用this來呼叫,或者使用using宣告,否則會導致在g++ 上無法編譯通過,錯誤提示會有如上錯誤資訊。
修改後,呼叫父類vector的函式和成員時,都加上了 this-> ,編譯通過,執行正常。
關於Django的模板繼承與注意事項
django中的模板引擎中,子模板繼承父模板中是這樣實現的。在父模板 假設url為 dad.html 中,aaatitle head aaap div 我沒有被覆蓋h1 body html 在子模板 假設url為 child.html 中沒有任何東西,只有以下 bbbtitle bbbbbp div...
關於建構函式繼承的兩點注意
1,如果基類沒有提供預設建構函式,派生類必須使用base顯式呼叫基建構函式。這是從msdn上看到的一句話 參考http msdn.microsoft.com zh cn library ms173115 v vs.80 aspx 一開始還真沒太引起過注意,最近才發現這個問題,例項如下 class b...
繼承 虛函式注意點
建構函式 析構函式 拷貝建構函式 賦值操作符過載函式 賦值建構函式 普通函式 非成員函式 不屬於類的成員,不能用於多型,只能被過載。靜態成員函式 靜態成員函式屬於類的資訊,被所有物件共享,不歸某個物件所有,沒有動態繫結的必要性。建構函式 友元函式 c 不支援友元函式的繼承,因此不能在派生類中被覆蓋,...