Вопросы с тегом «placement-new»

20
Безопасно ли называть размещение новым для `this` для тривиального объекта?

Я знаю, что этот вопрос задавался уже несколько раз, но я не мог найти ответ для этого конкретного случая. Допустим, у меня есть тривиальный класс, который не владеет никакими ресурсами и имеет пустой деструктор и конструктор по умолчанию. У него есть несколько переменных-членов с инициализацией в...

9
Является ли new (this) ThisClass () плохой идеей?

class FooView final : public Something { ... void refresh() { this->~FooView(); new (this) FooView(); } } Я никогда не видел эту идиому, и кажется, что она может быть очень тонкой и грязной, но я не могу думать о проблеме с ней (пока FooViewона окончательна). Это плохая...

9
Вариация на тему типа прокалывания: на месте тривиальная конструкция

Я знаю, что это довольно распространенная тема, но насколько легко найти типичный UB, я не нашел этот вариант до сих пор. Итак, я пытаюсь официально представить объекты Pixel, избегая при этом фактической копии данных. Это действительно? struct Pixel { uint8_t red; uint8_t green; uint8_t blue;...