スレを勃てるまでもないC/C++の質問はここで 7
■ このスレッドは過去ログ倉庫に格納されています
0448デフォルトの名無しさん
2009/02/08(日) 11:12:49funcによって書き換えられるプログラムです。
実際にはfuncの部分はもっと長いです。jに関するループを出た後、T.nが
-2147477599になってしまうことがあります。Tの寿命はmainが終わるまで
ずっとあってメンバーの値を参照渡しして変えると変更された値は保持さ
れていると考えたんですが間違いでしょうか
struct Temp{
int n;
};
class Func{
public:
void func(struct Temp&);
};
int main(void){
static Temp T;
Func F;
T.n=0;
for(int i=0;i<100;i++){
cout << "A" <<T.n <<" "<< &T.n << endl;
for(int j=0;j<100;j++){
cout << "B" << T.n <<" "<< &T.n << endl;
F.func(T);
cout << "C" << T.n <<" "<< &T.n << endl;
}
}
return 0;
}
void Func::func(struct Temp& T){
T.n=T.n+1;
}
■ このスレッドは過去ログ倉庫に格納されています