開発者によって明示的に宣言されたdestructorandを持たないクラスの場合を考えてみましょう。この場合、 for a class になることconstructorを理解しています。では、クラスのオブジェクトが破棄されようとしている場合にのみ、 が であるというのは本当ですか?destructorimplicitly declareddestructorimplicitly defined
コンストラクタの振る舞いも上記と同じです。implicitly definedクラスのオブジェクトが作成されたときだけですか?
編集
class A {
public:
};
int main() {
}
上記のコードでは、~A() が暗黙的に宣言されます。私の質問は、クラスのオブジェクトが次のようにインスタンス化されている場合にのみ、デストラクタの定義が暗黙的に行われるというのが本当かどうかです
class A {
public:
};
int main() {
A a;
}
それとも、オブジェクトのインスタンス化が行われていない場合でも、暗黙的に定義されていますか?