関数内のようにc++で変数をインスタンス化するとint x
(つまり、xはローカル変数です)、プロセスのスタックの最上位に割り当てられます。しかし、int *x= new int
そうすると、スペースはヒープで提供されます。
だから、私の質問は次のとおりです。
異なるクラス(c ++によって提供されるクラスまたはユーザー定義のクラス)のオブジェクトはどうですか?それらのオブジェクトはどこでインスタンス化されますか?例:Employeeをクラスとし、を宣言し
Employee emp;
ます。emp
スペース->スタックまたはヒープのどこにスペースが与えられますか?宣言
int a[4]
が関数内にある場合、の4つのセルすべてがa
スタックにスペースを取得しますか?