質問: s2; } int TwoString::get() { cout << str1 << endl << str2 << endl; return 0; } int TwoString::getconn() { string str3; str3= str1 + str2; cout << str3 << endl; return 0; } int TwoString::length() { cout<<((str1+str2).length())<
回答: こんにちは。 > > 『1』の部分では、同じsample.cppファイル内で、一つ前の、int TwoString::getconn()内で、str3を宣言していたが、これはローカル変数で、範囲外でエラーということでしょうか? > > > です。 他の関数内で定義されたローカル変数に、他の関数からはアクセスできません。 > > また『2』の部分では、先のローカル変数にも関わらず? > > 一度classsで宣言されて、グローバル化して、int TwoString::getconn() 内の宣言で、初期化or別の変数化した? > > > グローバル変数ではありません、クラスのメンバ変数です。 クラスのメンバ変数は同じクラスのメンバ関数内であればアクセス可能です。 C++ 変数のスコープあたりでググってもらえれば、説明はたくさん出てくるとおもうので、ここでは割愛します。読んで分からない事があればまた質問してください。 #ちなみに言語によっても変数のスコープは変わるので気をつけてください。