Здравствуйте, Kingofastellarwar, Вы писали:
K>фича для компилятора: K>вот например передаем мы чтото или создаем локальную переменую, а почему бы если нет особых указаний, то все что будет динамически выделено этим и производными объектами не выделять тоже в стеке? K>т.е. все операторы new вызванные в методах этого объекта, если нет особых указаний, будут аллокейтить в стеке K>например при передаче строк, можно вообще тогда обойтись без обращения к куче
Чем тебе не нравятся обращения к куче? Стек последовательный и при выделениях и последующих освобождениях будет быстро фрагментироваться(быстрее, чем куча). Можно обойтись одной кучей без стека, используя какие-то другие структуры данных, — стек просто удобен для реализации вложенных вызовов процедур, и поддерживается процессором.
У сложных вещей обычно есть и хорошие, и плохие аспекты.
Берегите Родину, мать вашу. (ДДТ)