2017-03-07 159 views
0

該代碼用於在mbed一個7段顯示器,我正的誤差表達式必須有一個類類型錯誤153

錯誤:表達式必須具有類類型在「main.cpp中」,行:44,柱: 6

這是seg_7.write(livewrite)的行;

我試過不同的語法,這似乎是正確的解決方案,但它不工作?另外當我改變寫在seg_7.write(livewrite);到其他任何事情,它給出了同樣的錯誤,導致我認爲它的語法。

-------圖書館--------------

class ShiftReg { 
    public : 

     ShiftReg();  
     ~ShiftReg(); 
     void write(int data); 

    private : 
     DigitalOut *clkout; 
     DigitalOut *dataout; 
     DigitalOut *latchout; 
}; 

ShiftReg seg_7();  

void refresh() 
{ 
    char livewrite = hex_nums[lives]; 
    seg_7.write(livewrite); 
    lcd.clear(); 
    drawsprite(hx,hy,HeroX,HeroY,hero); 
    lcd.refresh(); 

} 
+0

'ShiftReg seg_7(); '是一個函數聲明,而不是一個變量聲明。 – Barmar

回答

0

正如你已經宣佈它:

ShiftReg seg_7();  

seg_7是不帶參數並返回ShiftReg而不是ShiftReg類型的對象的函數的原型。有沒有必要的括號,只是:

ShiftReg seg_7; 

將解決問題。

+0

這個問題肯定會有數十萬個重複。 – Barmar

+0

哦ffs,這是一個愚蠢的錯誤XD Thankyou :) –

相關問題