/var/log/messages

debugging with sixth sense

Placement New

これ、知りませなんだ。某所にてソース掘削中に以下な記述を発見。C++ です。

template <typename T>

// 中略

    new (ptr) T;

ちょい略しすぎですが。

C++ では replacement new というものがあるらしく、上に引用したソレも実はそんな実装だったのですが、ヒープに領域を確保しない模様。

掘削した実装のソレを見るにオブジェクトの配列を生成するケイスではこれを使った方が楽なのかどうか。ちなみにこの命令を使うためには

#include <new>

が必要とのことでした。むむむ。

Comments