问题描述
error: expected ’(’ for function-style cast or type construction.
请教下各位,这个error要如何翻译成中文比较好?
在下有点懵逼了……
问题解答
回答1:错误:期望有一个’(’来进行函数风格的类型转化和类型的构造我记得好像有一种是因为调用不接受参数的函数,然后忘记打()会出这个错误。当然也许记错了,或者另有他因。
回答2:这个可能是指数据转换过程中使用了C风格的强制数据转换,并且使用错了,编译器建议使用C++风格的类型转换。
回答3:函数风格的转换或构造函数需要'('
这是编译器为你报的语法错误,应该编译器觉得你哪里的代码是在进行类型转换或写构造函数可是你没加括号。
函数风格的转换:class A {}auto i = A(0); // 因为很像函数调用,因此称为函数风格的转换;C++独有
类型构造:class foo{
foo() { /*...*/ } // type construction(实质上就是构造函数)
}