Re[2]: placement new (this) в конструкторе
От: PowerUserX  
Дата: 29.03.18 08:16
Оценка:
Здравствуйте, GhostCoders, Вы писали:

GC>Здравствуйте, σ, Вы писали:


σ>>Вопрос ИСКЛЮЧИТЕЛЬНО юридический, с точки зрения стандарта языка.

σ>>Это так или нет? И почему?
GC> Не знаю что там в стандарте, но по логике вещей такая конструкция допустима, и, думаю, вполне может себе использоваться
GC>в С++ до 11 стандарта.


Здравствуйте!

Тоже с точки кодонаписания — тоже проблем не вижу.
Но, конструктор — генерит asm для VTBL + конструкторы для полей
Т.е. у тебя

Klass::Klass(some_params)
{
// Тута компилер сгенерит код

new (this) Klass(other_params); // И тута компилер сгенерит код
}

Хотя они (компилеры) умные сейчас — мот и не будет...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.