以下の様な引数のoperator newを定義してみたのですが
マルチバイト文字セットの時には問題なく動作するのに
UNICODEでこの関数を使おうとすると以下の様に引数型が違うと言われてしまうのですが
~~~~~
error C2665: 'operator new' : 6 オーバーロードのどれも、すべての引数の型を変換できませんでした
~~~~~
UNICODEコンパイルの時のoperator newに必要な引数はどのようになっているのでしょうか?
まだインターネットなどで調べている途中なのですがなかなか見つからないので
暇な時で良いので良ければみなさんの力をお貸しください
ちなみに環境は Visual Studio C++ 2008 でコンパイルしています
よろしくお願いします
//////////
// : operator new のオーバーロード
void* operator new(size_t iSize, LPCTSTR sFile, LPCTSTR sFunc, UINT iLine){
~~ 略 ~~
};
//////////
// : operator delete のオーバーロード
void operator delete(void* pv){
~~ 略 ~~
};
//////////
// :
#define new new(__FILE__, __FUNCTION__, __LINE__)
//////////
// : メイン関数
int main(int argc, char* argv[])
{
int* intPointer = new int ;
delete intPointer ;
return 0;
}