Я играю с динамическим распределением памяти «вручную», и я хотел бы увидеть, как размещение нового реализуется ребята из MS, но при отладке я «вошел в» переехал меня код:Магия в размещении новых?
inline void *__CRTDECL operator new(size_t, void *_Where) _THROW0()
{ // construct array with placement at _Where
return (_Where);
}
МОГ
кто-нибудь объяснит мне, как на земле этот код помещает мой объект в место, указанную моим указателем, когда все, что я вижу в этом коде, - это строка с оператором return с тем, что я поставил в качестве аргумента. Я не думаю, что говорить в комментарии, что я хотел бы, чтобы этот fnc делать, на самом деле достаточно, чтобы он работал. Благодарим за конструктивные ответы.
Это означает, что вам лучше позаботиться о том, чтобы было достаточно места для размещения переданного 'size_t', иначе у вас будут проблемы ... –