Модуль: Присваивание и инициализация переменных


8. 2*. Инициализация копированием


Когда начальное значение указывается после знака равенства, это называется инициализацией копированием. Эта форма инициализации была унаследована от языка C.
int width = 5; // инициализация копирования значения 5 в переменную width

Так же, как и копирование присваивания, она копирует значение в правой части равенства в создаваемую переменную в левой части. В приведенном выше фрагменте переменная width будет инициализирована значением 5.

Инициализация копированием вышла из моды в современном C++ из-за меньшей эффективности по сравнению с другими формами инициализации для некоторых сложных типов. Однако C++17 исправил большую часть этих проблем, и инициализация копированием теперь находит новых защитников. Вы также можете встретить ее в старом коде (особенно в коде, перенесенном с языка C), или у разработчиков, которые просто считают, что она выглядит более естественно и легче читается.

time 1000 ms
memory 256 Mb

Комментарий учителя