C++相談室 part44
■ このスレッドは過去ログ倉庫に格納されています
0113デフォルトの名無しさん
2005/10/10(月) 01:44:54そいつは永久ループに入ります。
やるとすればこういう風にしないと。
#include <iostream>
#include <new>
class A {
const int i;
public:
A(int j = 0) : i(j) {}
A(const A& a) : i(a.i) {}
A& operator=(const A& a) {
new (this) A(a.i);
return *this;
}
void printi() const {
std::cout << "i = " << i << std::endl;
}
};
int main()
{
A a(123), b;
b = a;
a.printi();
b.printi();
}
■ このスレッドは過去ログ倉庫に格納されています