Итак, до C++11 инициализация членов класса для неконстантных и нестатических переменных не допускалась.
Бьерн Страуструп аргументировал это тем, что одноопределение Правило «было бы нарушено, если бы C++ допускал внутриклассовое определение сущностей, которые нужно было хранить в памяти как объекты.»
Что он имел в виду под этим?
Я понимаю, что правило одного определения требует, чтобы для каждой программы разрешалось только одно определение объекта, существующего в памяти. Но я до сих пор не понимаю, почему это правило может быть нарушено.
Мой вопрос связан с этим вопросом, но я задаю другой вопрос, специально для разъяснения того, как действует правило одного определения. сломался бы.
Я смотрел доклад Боба Стигалла «Назад к основам» - «Структура программы». И рассмотрел некоторые другие связанные вопросы. Но я до сих пор не могу понять утверждения Страуструпа.
Подробнее здесь: https://stackoverflow.com/questions/785 ... -class-mem
До C++11 «правило одного определения» нарушалось при инициализации членов класса нестатических и неконстантных переменны ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Частичная специализация шаблона класса для константных и неконстантных указателей
Anonymous » » в форуме C++ - 0 Ответы
- 68 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Использование InjectMock и MockBean для статических и нестатических объектов
Anonymous » » в форуме JAVA - 0 Ответы
- 26 Просмотры
-
Последнее сообщение Anonymous
-