C++ 错误运算符new[]:函数不接受1个参数

C++ 错误运算符new[]:函数不接受1个参数,c++,visual-c++-2008,new-operator,C++,Visual C++ 2008,New Operator,我的代码重载运算符new。下面的代码在Linux(GC4X)上工作得很好,但是Windows(Visual C++ 2008 Express版) VisualStudio2008速成版报表下的代码 错误C2660:运算符new[]:函数不接受1个参数 您可能需要#包括什么是“伪gcp”?如果您在代码中编译器抱怨的行添加注释,通常会有所帮助。在人们不熟悉编译器的特定错误格式的情况下,这会有所帮助,因为它有助于推断编译器试图告诉您的内容。您正在实现placementnew,但让它像普通的new@Da

我的代码重载运算符
new
。下面的代码在Linux(GC4X)上工作得很好,但是Windows(Visual C++ 2008 Express版)

VisualStudio2008速成版报表下的代码

错误C2660:运算符new[]:函数不接受1个参数


您可能需要
#包括

什么是“伪gcp”?如果您在代码中编译器抱怨的行添加注释,通常会有所帮助。在人们不熟悉编译器的特定错误格式的情况下,这会有所帮助,因为它有助于推断编译器试图告诉您的内容。您正在实现placement
new
,但让它像普通的
new
@David不,他没有实现新的placement,他只是在new中添加了一个额外的参数,让用户能够使用稍微修改过的new。这就是new(std::nothrow)的实现方式。实际上这样的代码来自OpenC++,我正试图让我的项目在Windows下使用它。谢谢大家。
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;
}