こんにちは、「com9」などのポート アドレスを含む wchar_t 配列へのポインターであるメンバー変数を使用する必要があるポンプ クラスがあります。
問題は、コンストラクターでこの変数を初期化すると、コンパイラーが減価償却の警告を出すことです。
pump::pump(){
this->portNumber = L"com9";}
これは問題なく動作しますが、コンパイルするたびに警告が表示されるのが面倒で、何か間違ったことをしているように感じます。
配列を作成してから、メンバー変数を次のように設定してみました。
pump::pump(){
wchar_t port[] = L"com9";
this->portNumber = port;}
しかし、何らかの理由で、これによりポート番号が「F」を指します。
明らかに、私の側の別の概念上の問題です。
私の初心者の質問を手伝ってくれてありがとう。
編集:
リクエストに応じて、portNumber の定義は次のとおりです。
class pump
{
private:
wchar_t* portNumber;
}
回答のおかげで、次のように変更されました。
class pump
{
private:
const wchar_t* portNumber;
}