[問題] 抽象類別其繼承類別的建構函數宣告

看板C_and_CPP作者 (rtt)時間14年前 (2012/02/03 23:21), 編輯推噓1(108)
留言9則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 這是小弟閱讀到C++ primer 5e,ch13中的關於抽象類別的範例 其中AcctABC是抽象類別,Brass,BrassPlus為繼承類別 在標頭檔的部分,第31行和第46行都是繼承類別的建構函數 小弟的問題是: 同樣是繼承類別,為什麼第31行有:AcctABC(s, an, bal),而46行卻沒有呢? 感謝答覆!! 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) http://ideone.com/8i2HB 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 175.181.197.106 ※ 編輯: rtt2008 來自: 175.181.197.106 (02/03 23:23)

02/03 23:25, , 1F
46 那行好像只有定義,實作放在哪啊?
02/03 23:25, 1F

02/03 23:26, , 2F
實作在127行
02/03 23:26, 2F

02/03 23:34, , 3F
就只是Base的ctor都有default值而已 視需求加不加
02/03 23:34, 3F

02/03 23:35, , 4F
31行的不加也可以 但意義上就不一樣了
02/03 23:35, 4F

02/03 23:49, , 5F
所以他有加,在實做那
02/03 23:49, 5F

02/03 23:50, , 6F
繼承而來的類別會預設呼叫基底類別的 AcctABC()
02/03 23:50, 6F

02/03 23:52, , 7F
如果要自己改成呼叫有加參數的建構函式就會如你貼的程式碼
02/03 23:52, 7F

02/04 00:11, , 8F
就算是繼承的,建構子跟解構子還是各別的
02/04 00:11, 8F

02/04 00:13, , 9F
文章代碼(AID): #1FA_kJaI (C_and_CPP)