作者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