Правильно ли неявно определенный конструктор копирования в C++ вызывает конструктор копирования для членов?

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

2 ответа

Решение

Да, это именно то, что он делает.

Да. Конструктор копирования по умолчанию в C++ будет инициализировать копию для каждого члена в типе.

Что касается того, как именно копия делается для примитивных типов, таких как int а также float Я не могу сказать наверняка. Я предполагаю, что это зависит от реализации, но большинство компиляторов просто копируют постепенно.

Другие вопросы по тегам