関数から参照を返す必要がある理由についての質問。
次のコードは、9 行目と 16 行目に置き換えるint&
と、まったく同じように動作int
します。
私のコード例では、参照と値を返すことは重要ではありませんか? どのような例で問題になり始めますか?
私の考えでは、ローカル変数は呼び出し元のスコープ外になるため、関数のローカル変数の参照を返すことはできません。したがって、呼び出し元が(スコープ内で)見ることができる変数の参照を返すことだけが理にかなっていますが、関数の呼び出し元が変数を見ることができる場合、それを返す必要はありません(?)(または、これは戻りますコードをきちんと整頓するために行われますか?)
関連リンク:参照を返すことは良い考えですか?
#include <iostream>
using namespace std;
class myClass{
private:
int val;
public:
myClass(int);
int& GetVal();
};
myClass::myClass(int x){
val = x;
}
int& myClass::GetVal(){
return val;
}
int main()
{
myClass myObj(666);
cout << myObj.GetVal() << endl;
system("pause");
return 0;
}