※ ChatGPTを利用し、要約された質問です(原文:Visual C++2010 Express)
Visual C++2010 ExpressでのToString()メソッドについて
このQ&Aのポイント
Visual C++2010 ExpressでのToString()メソッドについての説明と、ビルドエラーの原因について解説
ポインタの学習に関する講座で、(*a).ToString()というコードの意味や記述方法についての疑問
クラス、構造体、共用体に関する(*)の使い方と、ToString()メソッドへのアクセス方法についての解説
Visual C++2010 Express でのToString()メソッドについて教えて下さい。
私、Microsoft提供の、Visual C++2010 Expressを利用し、勉強を始めたばかりの超ビギナーです。インターネットで探したある「講座」の「ポインタの学習」で、前後は省略しますが、下記コーディングがありました。
//変数の宣言
int b;
//ポインタの宣言
int* a;
//ポインタの初期化
a=&b;
//内容代入
b=5;
label1->Text=(*a).ToString();
私、コードエディターに入力するときに、(*a)を間違って、*aと入力してしまいました。結果はビルド失敗で、エラーメッセージは、「Form1.h(113):error C2228: ‘ToString’の左側はクラス、構造体、共用体でなければなりません。型は‘int *’です。」とありました。その「講座」には(*a).ToString();については、なぜその様に記述するのか、何の説明もありません。エラーメッセージから*aはクラス、構造体、共用体ではないからということになるのでしょうが、( )を付けるとクラス、構造体、共用体のどれかになるということなのですか?(そういう決まりのなっているのですか?)又、ポインタからToString()メッソッドにアクセスする場合には、全て(*a)のように、( )を付けると解釈しておいて良いのですか?
何方か、初心者にも解りやすくご教授頂ければ、幸いです。
お礼
再度の回答を、有難うございました。大変解りやすい説明で感謝致します。 今後もお世話になる事があると思います。その節は宜しくお願い致します。