Некоторое время назад у меня был разговор с другом. Он опытный пользователь C++, а я неопытный пользователь C++. Он сказал мне, что я должен стремиться использовать переменные кучи, т.е.:
A* obj = new A("A");
в отличие от:
A obj("A");
Помимо всего того, что использование указателей удобно и гибко, он сказал, что лучше помещать вещи в кучу, а не в стек (что-то в стеке меньше, чем в куче?). Это правда? Если да, то почему?
Изменить: я сделал опечатку, сказав, что мой друг посоветовал переменные стека. Он рекомендовал переменные кучи.
Edit2: Я знаю о проблемах со сроком службы. Предположим, я правильно управляю временем жизни этих переменных. (т. е. единственный критерий, вызывающий обеспокоенность, - это хранилище кучи и стека без учета времени жизни)