2016-05-10 14 views
0

に名前を付けていないいくつかの単純なC++のソースコードです:https://github.com/kenpeter/test_cpp_libC++:「WiFiClient」はここでタイプ

私はArduinoの中でそれをコンパイルし、私は「タイプに名前を付けていない 『WiFiClient』」を得たが。基本的には、run_mode.cppに変数 "client"を定義し、mqtt.cppでそれを使いたいとします。

test_cpp_lib.ino

#include <WiFiClient.h>; 
#include "run_mode.h"; 
#include "mqtt.h"; 

void setup() { 
    Serial.begin(9600); 
} 

void loop() { 
    Serial.println("test"); 
    delay(2000); 
} 

mqtt.cpp

extern WiFiClient client; 

// do something with client 

run_mode.cpp

WiFiClient client; 

run_mode.h

extern WiFiClient client; 

mqtt.hが空です。

答えて

0

WiFiClientは、intやcharのような組み込み型ではありません。これは、そのインスタンスを作成する前に定義する必要があるクラスです(通常はヘッダーファイル内にあります)。あなたのコード例では、そのような定義はありませんが、run_mode.cppでWiFiClientをインスタンス化しようとしています。おそらく、run_mode.cppにはWiFiClient.hが含まれている必要があります。

ところで、#includeディレクティブの最後にセミコロンを追加しないでください。

関連する問題