Для чего раньше использовалось `auto`?

Я знаю, что до C++11 ключевое слово auto имело совершенно другое значение; это был спецификатор типа хранения, указывающий на объект, который имеет автоматический тип хранения (т. е. помещается в стек).

Такова теория... Как бы вы на самом деле использовали это ключевое слово (синтаксис) и почему? Кроме того, я не встречал этого ключевого слова в реальном коде до C++11; когда это было полезно (какой период времени)?


person Paul Manta    schedule 25.11.2011    source источник


Ответы (1)


Он использовался для объявления локальной переменной с автоматическим сроком хранения (т. е. «в стеке»).

По крайней мере, с C90 это было бесполезное ключевое слово, поскольку продолжительность автоматического хранения — это продолжительность хранения по умолчанию для локальной переменной.

person James McNellis    schedule 25.11.2011
comment
Значит, он был введен только для того, чтобы синтаксис был полным, но не с какой-то практической целью? (Почти как signed, за исключением того, что иногда это может быть полезно.) - person Paul Manta; 25.11.2011
comment
auto было то, как вы объявляли локальные переменные в B, который был языком-предшественником C. - person Raymond Chen; 25.11.2011