发生了什么
看如下代码
class A
{
public:
void do() {}
};
这会引起GCC报错: error: expected unqualified-id before 'do'
解释
通常 expected unqualified-id before 这个错误通常是因为语法错误引起的, 如上一个语句没有用
分毫结尾之类的. 这个也不例外, 原因就是 do是关键字
, 函数名及变量的名字是不能和关键字重名的.
当然有些情况可以如 operator int()
.
因此我们给函数取名时注意不要和关键字冲突, 函数名如果包含了关键字, 最好加一些明确的词将其区分开来.