[問題] super 關鍵字
Java/C# 寫多了, 常常寫 C++的時候會很直覺把 methods實
作直接 key在類別定義裡, 然後就會想說為了省打字時間,
也弄一個 super來用, 所以就搞出了下面這個東西
template <typename Base>
struct extends : Base
{
protected: typedef Base super;
};
為了測試他, 作了一個繼承體系 :
┌──────────┐
│ Grandpa │
├──────────┤
│+ sayHello() : void │
└──────────┘
△
│
┌──────────┐
│ Father │
├──────────┤
│+ sayHello() : void │
└──────────┘
△
│
┌──────────┐
│ Son │
├──────────┤
│+ sayHello() : void │
└──────────┘
程式碼 : http://codepad.org/JQcadLw9
其實中間還加了兩層為了定義 super多出來的類別, 想問一
下大家, 這樣會不會造成閱讀不良? 還是有人跟我一樣覺得
這樣不錯用? XD
備註 : 只適合單繼承
--
◢████ ◢█ ◢██◣ ◢█ ◢███ ◢█ T-ara版怎麼去
████◤ ██ ◢██◣█ ██ ████ ██ s ~> T-ara
█/███ ██ ██ ██ █/█ ◢███ █/█ 歡迎您的光臨
████◤ ██ ██ ██ ██◤ ███◤ ██◤ 恩靜、智妍、孝敏
█/███ ██ █/██◤ ██ █/██ ██ 素妍、居麗、寶藍
████◤ █◤ ◥██◤ █◤ ████◤█◤ ψmakigoto123
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.121.197.115
推
11/17 01:02, , 1F
11/17 01:02, 1F
→
11/17 01:03, , 2F
11/17 01:03, 2F
也沒多厲害啦~ 直接看程式碼應該會蠻混亂的吧? 畢竟
寫那麼醜.. 所以就先畫圖囉! :)
推
11/17 01:29, , 3F
11/17 01:29, 3F
→
11/17 01:31, , 4F
11/17 01:31, 4F
這個還不是啦 XD
先建立一個class template, 在具現化時括號裡填什麼
, 它就把那個型態定義新的別名叫做 super, 而且這個
別名可以被繼承、隱藏, 就不用每次寫新類別都要自己
加 typedef 啦!
推
11/17 01:40, , 5F
11/17 01:40, 5F
→
11/17 01:40, , 6F
11/17 01:40, 6F
推
11/17 01:43, , 7F
11/17 01:43, 7F
→
11/17 01:43, , 8F
11/17 01:43, 8F
那個是一個型態~ template <typename Base>, 是可以
被替換掉的, 譬如把 Grandpa 代進去會得到
//┌ 這裡指繼承, struct 預設用 public
//↓ class 預設是用 private
struct extends<Grandpa> : Grandpa
{
protected: typedef Grandpa super;
};
這個類別會幫我們作好 typedef的動作, 如果我們想要
這個別名, 就繼承它!(且也已經幫我們繼承了Grandpa)
推
11/17 01:52, , 9F
11/17 01:52, 9F
→
11/17 01:53, , 10F
11/17 01:53, 10F
推
11/17 02:00, , 11F
11/17 02:00, 11F
推
11/17 02:03, , 12F
11/17 02:03, 12F
樓上 XDD
※ 編輯: loveme00835 來自: 140.121.197.115 (11/17 02:14)
推
11/17 06:47, , 13F
11/17 06:47, 13F
推
11/17 21:02, , 14F
11/17 21:02, 14F
→
11/17 21:05, , 15F
11/17 21:05, 15F
推
11/17 21:05, , 16F
11/17 21:05, 16F
推
11/19 06:09, , 17F
11/19 06:09, 17F
→
11/19 06:09, , 18F
11/19 06:09, 18F
→
11/19 06:10, , 19F
11/19 06:10, 19F
→
11/19 06:40, , 20F
11/19 06:40, 20F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章