我有一個默認的int&
參數(如iNewArgument)在頭文件添加到現有的函數定義:如何使用帶有默認值的int&參數?
什麼是初始化的最後一個參數,使其取默認值的語法?
..
virtual int ExecNew
(int& param1, int& RowIn,int& RowOut, char* Msg = '0',
bool bDebug=true, int& iNewArgument = NULL) = 0 ;
.
.
NULL已經#defined 0
Error: default argument: cannot convert from
int
toint&
如果你希望它能夠爲null,那麼你需要一個指針而不是引用。 – 2010-07-06 22:10:44
我與邁克在這。請參閱[我的答案](http://stackoverflow.com/questions/3190571/c-int-reference-question/3190603#3190603)。 – sbi 2010-07-06 22:18:58
我拿回來(我刪除了我的答案)。除了約翰尼斯,每個人都忽略了「虛擬」。爲虛擬函數設置默認參數並不是一個好主意。 – sbi 2010-07-06 22:29:46