我收到错误“'之前的预期类型说明符';'令牌“在下面标记的代码行中。是否要求指定(* this)的类型?为什么编译器不知道(* this)的类型?
struct P{
};
struct R : public P{
virtual P* copy(){
return new(R(*this)); //error here
}
};
答案 0 :(得分:6)
您需要说:return new R(*this);
这是非展示位置new
- 表达式的形式。没有额外的括号。