作者uxijgil ()
看板EE_DSnP
標題[問題] 在 cirMgr.h 呼叫lexOptions
時間Thu Jun 4 23:42:48 2009
如何在 cirMgr.h 裡呼叫 CmdExec 的lexOption() ?
我直接呼叫的結果是:
錯誤 , 沒有物件無法呼叫成員函式
我回頭檢查程式碼
CmdClass(CIRRead) 這個 class 繼承public CmdExec
所以在 CmdClass 的物件中可以直接引用 CmdExec::lexOptions()
可是 CmdClass(CIRRead) (in cirCmd.cpp中)只有include cirMgr.h ( 平行關係 ? )
所以不能直接在 cirMgr.h裡面直接呼叫 CmdExec::lexOptions()
有什麼方法可以在 cirMgr 的member function中呼叫 lexOption() ?
而不是 New 一個Class出來執行 ~~
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.174.174
1F:推 ric2k1:lexOption() 是 CmdExec 的 non-static member function, 06/05 00:16
2F:→ ric2k1:所以要透過 CmdExec 的物件來呼叫 (Derived class 的物件也 06/05 00:17
3F:→ ric2k1:不行...) 06/05 00:18
4F:推 yea107:我的做法是直接用hw2(hw3?)裡頭的lexOption為藍圖 06/05 01:36
5F:→ yea107:重寫一個getOption(),還可以自己增加新的功能XD 06/05 01:37
6F:→ uxijgil:感謝! 06/05 02:27