2016-10-13 40 views
0

MQTTを介してデータを送信するクライアントを実装していますが、私はPaho MQTT C++ libsを使用しています。 今、私はユーザー名とパスワードの認証にサポートを追加する必要があると私は、このようにそれらを設定しようとすると:Paho MQTT C++接続ユーザーとパスワード

std::string user = "user"; 
std::string password = "password"; 
mqtt::connect_options connOpts; 
connOpts.set_user_name(user); 
connOpts.set_password(password); 

と私はMQTTする:: CONNECT_OPTIONSを

未定義の参照を取得:: set_user_name(STD :文字列 CONST &)

が、ヘッダファイルconnection_options.hで

/** 
* Sets the user name to use for the connection. 
* @param userName 
*/ 
void set_user_name(const std::string& userName); 

set_password(password)で同じことが起こります。

私が持っているもう1つの問題は、クラス内でmqtt :: async_clientオブジェクトをグローバルにすることができないため、接続を維持できないことです。公開機能内でのみ作成できます。

ありがとうございます。

答えて

0

私はこの問題に走った、と(C++ラッパー内の他のファイルに初期化されません)connect_options.hset_user_nameset_passwordで機能を自分自身のコードを追加して、それを修正しました。

void set_user_name(const std::string& userName){ 
    const char * usr = userName.c_str(); 
    opts_.username = usr; 
} 


void set_password(const std::string& password){ 
    const char * pw = password.c_str(); 
    opts_.password = pw; 
} 
+0

申し訳ありません申し訳ありませんが、私は以前あなたにお答えしていませんでした。私は他のもので忙しかったです。私はこれを試して、うまくいけばフィードバックをします。 – Erick

関連する問題