2017-03-07 9 views
0

mbed에 7 세그먼트 디스플레이에이 코드, 내가 오류를 얻고있다 있어야합니다표현은 클래스 타입 에러 (153)

오류 : 44 골 : 표현은, "MAIN.CPP"에 라인을 클래스 유형이 있어야합니다 : 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 고맙습니다 :) –