Follow

C++er各位に聞きたいんだけど、これってplacement newか???私が知ってるplacement newじゃないんだが、Effective C++ではこれがそうだってほんとに書いてるの・・・?
'Placement new' について実験してみた qiita.com/pen_guin/items/22cc4

@yumetodo (下手な日本語ですみません)
size_t以外の引数を取るnew演算子関数とは「配置new」と呼ばれます。
Wikipediaによると「当初、インスタンスを特定のメモリアドレスに「配置」するための機能ということで配置newと命名された。後に配置に限らず様々な使い道に応用できることが明らかとなったものの、今でも慣習的に配置newと呼ばれる。 」。
自分のnew演算子関数を作れば、配置以外の為にも使えるということですね。
例えば、UE4(ゲームエンジン)にはTArrayに要素を挿入するnew演算子関数があります:
github.com/EpicGames/UnrealEng

@matiaslavik なるほど。ちょっと理解しがたい慣習ですが、まあ納得することにします。

Sign in to participate in the conversation
C++er丼(undefined丼)

C++erのための、C++erによる、C++erのMastodon