Список - инициализация - Большая Энциклопедия Нефти и Газа, статья, страница 1
Дополнение: Магнум 44-го калибра бьет четыре туза. Законы Мерфи (еще...)

Список - инициализация

Cтраница 1


Список инициализации в определении конструктора помещается непосредственно после списка параметров. Он содержит двоеточие с последующим одним или несколькими инициализаторами полей, отделенными друг от друга запятыми. Инициализатор поля содержит имя переменной с последующим начальным значением в круглых скобках. Например, в приведенном ниже классе конструктор содержит список инициализации, который, в свою очередь, содержит инициализаторы полей для всех переменных класса.  [1]

Список инициализации членов класса в данном конструкторе содержит вызов конструктора базового класса CRectangle, которому передаются значения, присваиваемые переменным-членам. Список инициализации может использоваться для инициализации как базового класса, так и переменных членов ( рассматривался в параграфе Инициализация переменных-членов в конструкторах гл. Конструктор класса CBlock содержит вызов функции SetColor, которая устанавливает значение переменной FillColor.  [2]

Если список инициализации содержит больше инициализирующих значений, чем имеется элементов в массиве, это является ошибкой.  [3]

Если список инициализации содержит начальных значений больше, чем элементов массива, то это - ошибка.  [4]

Структуры можно инициализировать, используя список инициализации, для этого после имени переменной в объявлении структуры ставится знак равенства, за которым следует помещенный в фигурные скобки и разделенный запятыми список инициализаторов.  [5]

Обратите внимание, что количество элементов списка инициализации должно соответствовать размерности массива.  [6]

Так как конструктор по умолчанию явно не инициализирует базовый класс ( список инициализации пуст), компилятор автоматически вызывает конструктор по умолчанию базового класса ( CRectangle: : CRectangle ()), присваивающий нулевые значения всем переменным, определенным внутри него. Если базовый класс не имеет конструктора по умолчанию, то будет получено сообщение об ошибке.  [7]

Когда объявляется объект класса, между именем объекта и точкой с запятой можно в скобках указать список инициализации элементов. Эти начальные значения передаются в конструктор класса. Скоро мы увидим несколько примеров подобных вызовов конструкторов.  [8]

Если количество начальных значений в списке инициализации меньше чем количество элементов массива, оставшиеся элементы автоматически получают в качестве начальных значений последние значения из списка инициализации.  [9]

Список инициализации членов класса в данном конструкторе содержит вызов конструктора базового класса CRectangle, которому передаются значения, присваиваемые переменным-членам. Список инициализации может использоваться для инициализации как базового класса, так и переменных членов ( рассматривался в параграфе Инициализация переменных-членов в конструкторах гл. Конструктор класса CBlock содержит вызов функции SetColor, которая устанавливает значение переменной FillColor.  [10]

Такие переменные называют объектами-членами или встроенными объектами. Его можно инициализировать, передавая требуемые параметры конструктору, помещенному в список инициализации конструктора класса, содержащего объект-член.  [11]

Список инициализации в определении конструктора помещается непосредственно после списка параметров. Он содержит двоеточие с последующим одним или несколькими инициализаторами полей, отделенными друг от друга запятыми. Инициализатор поля содержит имя переменной с последующим начальным значением в круглых скобках. Например, в приведенном ниже классе конструктор содержит список инициализации, который, в свою очередь, содержит инициализаторы полей для всех переменных класса.  [12]



Страницы:      1