[英]C++ discards qualifiers
我有這個錯誤:
BSPArduino.cpp:316:錯誤:將'const BSPArduino'作為'this'參數傳遞給'virtual void BSPArduino :: enableWdt(const WATCHDOG_TIMER_DELAY&,const ___ bool&)'丟棄限定符
這個方法定義如下:
void BSPArduino::enableWdt(const WATCHDOG_TIMER_DELAY &delay, const ___bool &enable)
我想這樣稱呼它:
enableWdt(this->watchdogTimer, ___false);
附:
WATCHDOG_TIMER_DELAY watchdogTimer;
我不明白為什么這個構建錯誤...
非常感謝你的幫助
安東尼
BSPArduino :: enableWdt()是一種非const方法。 如果您嘗試從const中調用非const方法,則會出現此錯誤。
本質上,錯誤是試圖告訴你,你正在丟棄“這個”的常量。
你試圖從const
成員函數調用非const
函數; 這是不允許的。
如果可能,請為enableWdt
添加const
限定符。 如果那是不可能的(因為它修改了對象),那么你必須從調用函數中刪除const
限定符,或者重構代碼以便從其他地方調用enableWdt
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.