我的班级里有一个私人财产,我想在其setter上添加一些代码,我该如何实现呢?
我可以使用方法做到这一点,但我不想只是为了避免使用属性。
private:
float damage;
答案 0 :(得分:1)
您可以使用类类型替换普通旧数据类型,以执行您想要的操作:
class Damage
{
public:
Damage& operator=(float x) { value = x; /* add code here*/ }
operator float() const { return value; }
private:
float value;
};
然后只需将float
替换为Damage
即可让您按照自己的意愿行事。