我的代码重载了运算符new
。下面的代码在Linux(gcc4x)下工作正常,但不适用于Windows(Visual C ++ 2008 Express Edition)
Visual Studio 2008 Express Edition下的代码报告
错误C2660:operator new []:函数不带1个参数
class dummy{};
void* operator new[] (size_t size, dummy gcp)
{
return ::operator new[](size); //error
}
int main()
{
dummy dummyobj;
dummy* ptr = new (dummyobj) dummy[5];
return 0;
}
答案 0 :(得分:11)
您可能需要#include <new>
。