ステートメントを使用してコピーコンストラクターを使用しようとしました:
X y = X();
しかし、コピーコンストラクターは呼び出されていません。g++ 4.1.0 を使用しています。クラスに X(const X&) コンストラクターと X(x&) コンストラクターの両方を設定しました。
これは機能するはずですか、それともコードで非常に基本的な問題を抱えていますか?
クラスの私のコードは
class A
{
public:
int i;
A(int ii)
{
i = ii;
}
A(const A&)
{
i = 5;
}
A(A&)
{
i = -1;
}
A()
{
i = 5000;
}
};
A a = A();または を使用して使用する
A a = A(100);と動作しませんが、使用するとA a(b);正常A a = b;に動作します。
私が見逃しているポイントは何ですか?ウィキペディアによると、うまくいくはずですが、私の場合はうまくいきません:(。
すべての回答とコメントを前もって感謝します。