• 締切済み

c++のnew演算子をオーバーロードできるものの、

c++のnew演算子をオーバーロードできるものの、 delete演算子をオーバーロードできなくて悩んでいます。 コンパイルは通るのですが、ランタイム時に ペアとなるdeleteが呼ばれません。 inline void* operator new(size_t size, const char* filename , int line , const char* funcname ) { return my_local_malloc( size , filename , line , funcname ); } inline void operator delete(void* pMem, const char* filename , int line , const char* funcname ) { my_local_free( pMem , filename , line , funcname ); } deleteも確実にオーバーロードできる方法を ご存知のかた、お教え願います。

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

http://www.fides.dti.ne.jp/~oka-t/cpplab-placement-new-2.html こういうことではないですか?

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

うぅ~ん, placement delete をプログラムから明示的に呼び出すのは不可能な気がする....