授業について簡単な質問があります。
次のオブジェクト Apple (デフォルトのコンストラクターが削除されています) を考えてみましょう。
class Apple
{
private:
bool _fruit;
public:
Apple(bool fruit) : _fruit(fruit) { }
};
スタック/ヒープで宣言します。
Apple p(true);
Apple * o = new Apple(true);
わかりました、2 つ目はポインターのように見えるので、直接宣言する必要はありません。
Apple * o;を実行できます。後でo = new Apple(true);として構築します。
しかし、スタック上ではどうでしょうか? Apple p を宣言します。コンパイルエラーが発生します。
定義で直接 p を作成しなくても、後で p を作成するにはどうすればよいですか? とても有難い。