operator をオーバーロードできることはわかっていますnew
。size_t
そうすると、デフォルトでメソッドにパラメーターが送信されます。ただし、size_t
パラメーターと追加のユーザー指定パラメーターをオーバーロードされたnew
オペレーターメソッドに送信することは可能ですか?
例えば
int a = 5;
Monkey* monk = new Monkey(a);
このように新しい演算子をオーバーライドしたいので
void* Monkey::operator new(size_t size, int a)
{
...
}
ありがとう
編集:これが私が達成したいことです:
アプリの開始時に割り当てられた仮想メモリのチャンク (メモリ プール) があります。基本クラスを継承するすべてのオブジェクトは、オーバーロードされた new 演算子を継承します。オーバーロードされた new で引数を渡したい場合があるのは、メモリ プールを使用するか、malloc で割り当てるかをメモリ マネージャーに伝えるためです。