0
class A
{
std::string name;
public:
A(const A & rhs)
{
name = rhs.name;
}
};

上記Aクラスのコピーコンストラクタで、文字列クラスの代入演算子を呼び出すか、文字列クラスのコピーコンストラクタを呼び出すか。

name データ メンバはまだ定義されていないので、コピー コンストラクタは呼び出されませんか?

4

2 に答える 2

4

代入演算子。コピーコンストラクターが必要な場合:

A(const A& rhs)
: name(rhs.name)
{
}
于 2012-07-16T00:09:21.230 に答える
0

メンバーごとの代入を行うデフォルトの (コンパイラ生成の) 代入演算子が呼び出されます

于 2012-07-16T00:09:38.453 に答える