中文翻译:C++ error

error: expected '(' for function-style cast or type construction.

请教下各位,这个error要如何翻译成中文比较好?

在下有点懵逼了……

阅读 9.8k
3 个回答

错误:期望有一个'('来进行函数风格的类型转化和类型的构造
我记得好像有一种是因为调用不接受参数的函数,然后忘记打()会出这个错误。当然也许记错了,或者另有他因。

这个可能是指数据转换过程中使用了C风格的强制数据转换,并且使用错了,编译器建议使用C++风格的类型转换。

函数风格的转换或构造函数需要"("

这是编译器为你报的语法错误,应该编译器觉得你哪里的代码是在进行类型转换或写构造函数可是你没加括号。

函数风格的转换:
class A {}
auto i = A(0); // 因为很像函数调用,因此称为函数风格的转换;C++独有

类型构造:
class foo
{

foo() { /*...*/ } // type construction(实质上就是构造函数)

}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题