Различия между динамической памятью и «обычной» памятью
Каковы некоторые из технических различий между памятью, которая выделяется сnew
оператор и память, которая выделяется с помощью простого объявления переменных, таких какint var
? Есть ли в C ++ автоматическое управление памятью?
В частности, у меня есть пара вопросов. Во-первых, поскольку с динамической памятью необходимо объявить указатель для хранения адреса фактической памяти, с которой вы работаете, динамическая память не используется.more объем памяти? Я не понимаю, зачем нужен указатель, если только вы не объявляете массив.
Во-вторых, если бы я сделал простую функцию, такую как эта:
int myfunc() { int x = 2; int y = 3; return x+y; }
... И назовите это, освободится ли память, выделенная функцией, как только закончится область ее существования? Как насчет динамической памяти?