Поделиться через


Инициализаторы

Деклараторы могут указать начальное значение для объектов.Единственным способом определить значение для объектов Const тип в деклараторе.Часть декларатора, который определяет эту начальное значение называется инициализатором.2 Основных типа инициализаторов:

  • Инициализаторы, вызываемые с помощью синтаксиса знака равенства, включая статических инициализаторов:

     = expression 
    = { expression-list }
    = { { expression-list}, {expression-list}, . . . }
    
  • Инициализаторы, вызываемые с использованием синтаксиса функция-стиля:

    ( expression )
    

Только объекты классов с конструкторами можно инициализировать с синтаксисом функция-стиля.2 Формы синтаксиса также отличаются в управлении доступом и потенциальной использовании временных объектов.Рассмотрим следующий код, в котором показаны некоторые деклараторы с инициализаторами:

int      i = 7;                  // Uses equal-sign syntax.
Customer Cust( "Taxpayer, Joe",  // Uses function-style
"14 Cherry Lane", //  syntax. Requires presence
"Manteca",        //  of a constructor.
"CA" );

Объявления auto регистра статического и внешние переменные могут содержать инициализаторы.Однако объявления внешних переменных могут содержать инициализаторы, только если переменные не объявляются как extern.

Эти инициализаторы могут содержать выражений, включая константы и переменные в текущей области.Выражение инициализатора вычисляется в объявление, обнаруженные в программной последовательности или для глобальных статических объектов и переменные при запуске программы.(Дополнительные сведения об инициализации глобальных статических объектов см. в разделе Дополнительные вопросы запуска.)

Подразделы в этом разделе:

См. также

Ссылки

Деклараторы