![](/img/trans.png)
[英]C++ class member name lookup issues (regarding the wording of standard n3225)
[英]arduino c++ issues regarding class name
我正在將philips色調燈泡連接到arduino,並在網上找到了一些資源。 其中一個資源有一個文件,該文件不斷拋出錯誤,當我查看它時,我從未見過使用過這種語法。 誰能幫我嗎?
#ifndef SERIALHUE_H
#define SERIALHUE_H
#include <Arduino.h>
#include <Stream.h>
#include <ArduinoHue.h>
class SerialHue: public ArduinoHue{
public:
SerialHue(char* ipAddress, Stream* serial);
boolean connect(char* deviceId, char* username);
protected:
char* _ipAddress;
char* _deviceId;
char* _username;
boolean makePost(char* request, char* data);
boolean waitForResponse();
Stream* _serial;
};
#endif
錯誤在這一行:
* SerialHue類:公共ArduinoHue { *
給出錯誤:
SerialHue.h:10:錯誤:“ {”令牌之前的預期類名
這種格式是什么?這里有什么問題?
檢查編譯器設置...它可能嘗試使用ac編譯器編譯c ++代碼
關於格式:
class X : public Y {
}
是在C ++中擴展類的語法
加:檢查ArduinoHue.h是否確實定義了ArduinoHue類
...如果無法弄清楚:查看預編譯的源文件(g ++ -E)
首先,請確保您沒有遞歸地包含一個文件,例如#include一個文件,該文件#includes您也#included的其他文件。
另外,轉發聲明而不是#include ArduinoHue.h可以解決您的問題。 如:
class ArduinoHue;
我發現了類似的問題,它們也許可以為您提供幫助:
'{'令牌之前的預期類名
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.