=
C++での演算子の実装に関連する質問があります。私の記憶が正しければ=
、クラスに実装する方法は 2 つあります。1 つは =
明示的にオーバーロードする方法で、たとえば次のようになります。
class ABC
{
public:
int a;
int b;
ABC& operator = (const ABC &other)
{
this->a = other.a;
this->b = other.b;
}
}
=
もう 1 つは、暗黙的に定義すること です。例えば:
class ABC
{
public:
int a;
int b;
ABC(const ABC &other)
{
a = other.a;
b = other.b;
}
}
私の質問は次のとおりです。
=
1)明示的および暗黙的に実装する必要がありますか? 2) それらの 1 つだけが必要な場合、どの実装が優先されますか?
ありがとう!