我认为 c++ 中的属性可用于通过方法设置变量,同时仍保持点符号进行访问。我错了吗?
class Class {
private:
int _number;
void putNumber(int number) {
if (number < 10) _number = 0;
else _number = number;
}
int getNumber() {
return _number;
}
public:
__declspec(property(get = getNumber,put = putNumber)) int number;
};
main()
{
Class classObj;
classObj.number = 2;
std::cout << classObj.number;
}
源代码不应该输出0吗?它虽然输出2..
我怎样才能达到我想要的效果?维护点符号但通过 setter 和 getter 进行访问?