Лучше использовать переменные кучи или стека?

Некоторое время назад у меня был разговор с другом. Он опытный пользователь C++, а я неопытный пользователь C++. Он сказал мне, что я должен стремиться использовать переменные кучи, т.е.:

A* obj = new A("A");

в отличие от:

A obj("A");

Помимо всего того, что использование указателей удобно и гибко, он сказал, что лучше помещать вещи в кучу, а не в стек (что-то в стеке меньше, чем в куче?). Это правда? Если да, то почему?

Изменить: я сделал опечатку, сказав, что мой друг посоветовал переменные стека. Он рекомендовал переменные кучи.

Edit2: Я знаю о проблемах со сроком службы. Предположим, я правильно управляю временем жизни этих переменных. (т. е. единственный критерий, вызывающий обеспокоенность, - это хранилище кучи и стека без учета времени жизни)

18
задан Some Newbie 2 June 2012 в 08:27
поделиться