作者windincloud (雲淡風輕)
看板C_and_CPP
標題[STL ] Container中如何新增member function?
時間Wed Apr 29 17:32:36 2009
想問一下~
若今天我使用STL中的container
想對其新增 operator function或其它member function的話
我應該怎做?
ex. stack中 它所用的Member functions
(constructor)
empty() Test whether container is empty (public member function)
size() Return size (public member function)
top() Access next element (public member function)
push() Add element (public member function)
pop() Remove element (public member function)
我想要新增 operator[](size_t i);
不知該如何下手?
還是我只能用繼承的方式去處理及新增?
感謝回答~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.138.155.196
推 chrisdar:直接宣一個stack當成員變數如何? 04/29 17:37
→ windincloud:我是想看看有沒有直接寫 不要自己寫class處理的方法~ 04/29 17:49
推 chrisdar:看來只能用 friend 啦 請參閱 operator <<(..) 04/29 18:03
推 chrisdar: 我記錯了 請無視之 04/29 18:05
→ windincloud:剛剛還在想 我直接宣告stack 那這樣怎用friend XD 04/29 18:06
推 chrisdar:請忘了stack吧 改用deque 04/29 18:08
→ chrisdar:stack是deque的功能限縮版 04/29 18:09
→ windincloud:看來要自己加member function 只能自開class+繼承囉~ 04/29 18:22
→ tinlans:繼承 STL 容器是重大錯誤,這樣寫 0 分。 04/29 22:59
推 plover:多用組合,少用繼承 04/30 01:25