类方法和变量同名,编译错误在C++不是在Java中?
class Test {
bool isVal() const {
return isVal;
}
private:
bool isVal;
};
在编译此文件时,它说
testClass.cpp:9: 声明 'bool Test::isVal'
testClass.cpp:3:与之前的声明 'bool Test::isVal()' 冲突
尽管这同样适用于java
class Test {
private boolean isVal;
public boolean isVal() {
return isVal;
}
}
为什么编译错误发生在C++而不是Java中?