Информация об изменениях

Сообщение Re[29]: Книжка по UB от 14.08.2025 12:10

Изменено 14.08.2025 12:22 rg45

Re[29]: Книжка по UB
Здравствуйте, so5team, Вы писали:

R>>Хотя, может же и проинлайнить


S>С точки зрения описанной в проблемной главе книги ситуации это вообще никакой роли не играет.


Ну, я согласился уже. Есть общие требования к виртуальным функциям, и есть уточнения к этим требования для конструкторов/деструкторов. И эти уточнения не отменяют общие требования, а только уточняют их. А те случаи, когда компилятор может заменить виртуальный вызов на прямой — это следует трактовать как оптимизации, не меняющие поведение. Всё верно?

S>А ситуация такая, что в "более лучших"(tm) языках мы можем полагаться на вызов "самой свежей" реализации виртуального метода в конструкторах/деструкторах.


Да, я в курсе. У них же там и времени жизни объекта нет, как такового.
Re[29]: Книжка по UB
Здравствуйте, so5team, Вы писали:

R>>Хотя, может же и проинлайнить


S>С точки зрения описанной в проблемной главе книги ситуации это вообще никакой роли не играет.


Ну, я согласился уже. Есть общие требования к виртуальным функциям, и есть уточнения к этим требования для конструкторов/деструкторов. И эти уточнения не отменяют общие требования, а только уточняют их. А те случаи, когда компилятор может заменить виртуальный вызов на прямой — это следует трактовать как оптимизации, не меняющие поведение. Всё верно?

S>А ситуация такая, что в "более лучших"(tm) языках мы можем полагаться на вызов "самой свежей" реализации виртуального метода в конструкторах/деструкторах.


Да, я в курсе. У них же там нет и детерминированного времени жизни объектов, поэтому могут позволить себе такой беспредел.