Вопросы по теме 'placement-new'

Что это за вторая новинка?
Что такое вторая линия? (Видел, отвечая на другой вопрос.) int * x = new int [1] ; int * y = new (x) int; После второй строки x и y имеют одинаковое значение (указывают на одно и то же место). В чем разница между y = x и второй строкой?...
473 просмотров

Новые места размещения и исключения
Оператор «размещение нового» объявляется так: void* operator new (std::size_t size, void* ptr) noexcept; Но хотя это не связано с каким-либо фактическим распределением, поэтому исключения с плохим распределением устраняются, все же возможно,...
2190 просмотров

С++ размещение нового в домашнем векторном контейнере
Здесь есть несколько очень похожих вопросов, но они не могли помочь мне понять это. Кроме того, я даю полный пример кода, чтобы другим было легче его понять. Я сделал векторный контейнер (не мог использовать stl из-за проблем с памятью), который...
1891 просмотров
schedule 20.02.2024

Размещение нового и деструктора
У меня есть простая структура фиксированного размера, содержащая встроенные типы. Я создаю пул памяти, выделяя часть памяти, и разделяю эту память на блоки размером моей структуры. Затем он использует размещение new для вызова конструктора в...
730 просмотров
schedule 28.10.2023

Размещение нового и назначение класса с константным членом
Почему такое неопределенное поведение? struct s { const int id; // <-- const member s(int id): id(id) {} s& operator =(const s& m) { return *new(this) s(m); // <-- undefined behavior? } };...
946 просмотров

Дополнительная конструкция при использовании нового размещения с классом хранилища
В ситуации, когда я хочу избежать динамического выделения памяти, я заменяю новый оператор процессом, который по существу использует память некоторого статически выделенного объекта (класс Storage ниже). Вы можете увидеть минимальный рабочий пример...
62 просмотров
schedule 29.01.2024