) и обратно к исходному типу возвращает исходное значение указателя. - конец примечания]

ли (семантическая) разница между возвращаемым значением размещения new и приведенным значением его операнда?

struct Foo { ... };
char buffer[...];

Foo *a = new(buffer) Foo;
Foo *b = reinterpret_cast<Foo *>(buffer);

Есть лиa а такжеb чем-то отличаются?

РЕДАКТИРОВАТЬ: Основываясь на комментарии DaBler, этот вопрос говорит о том, что есть разница, если используются члены const / reference:Размещение нового и назначение класса с постоянным членом

Итак, мой немного обновленный вопрос:a а такжеb отличаются в любом случае, еслиFoo не имеет постоянных или референтных членов?

Ответы на вопрос(2)

Ваш ответ на вопрос