Результаты поиска по запросу "placement-new"
CUDA: выделение памяти для устройства в C ++
Сейчас я начинаю использовать CUDA и должен признать, что немного разочарован в C API. Я понимаю причины выбора C, но если бы язык основывался на C ++, некот...
Перезапись объекта объектом того же типа
Хорошо ли определено следующее?
Что такое конструктор на месте в C ++? [Дубликат]
Возможный дубликат:C ++ - «новое размещение»Что такое конструктор на месте в C ++?например Тип данных * x = new (y) Тип данных ();
О, неважно, я понимаю, что ты говоришь. Создайте объект, прежде чем вызывать деструктор оригинала, а затем двигайтесь от него.
ю, что явный вызов деструктора может привести к неопределенному поведению из-за двойного вызова деструктора, как здесь:
5.3.5, а не 3.7.4.
рен, что этот код должен быть незаконным, так как он явно не будет работать, но, похоже, это разрешено C ++ 0x FCD.
stackoverflow.com/questions/364483/...
тся ли следующий законный C ++ с четко определенным поведением? class my_class { ... }; int main() { char storage[sizeof(my_class)]; new ((void *)storage) my_class(); }Или это проблематично из-за соображений приведения / выравнивания указателя?
Опасно ли использовать размещение new на старом объекте без явного вызова деструктора первым?
Я хотел бы переработать память для объекта, а не освобождать и реконструировать его. Является ли следующее использование «размещения нового» безопасным, предполагая, чтоFoo на практике не содержит указателей (но может содержать функции)? Кроме ...
) и обратно к исходному типу возвращает исходное значение указателя. - конец примечания]
ли (семантическая) разница между возвращаемым значением размещения new и приведенным значением его операнда? struct Foo { ... }; char buffer[...]; Foo *a = new(buffer) Foo; Foo *b = reinterpret_cast<Foo *>(buffer);Есть лиa а такжеb чем-то ...