我将通过我想要达到的目标来描述这个问题。
假设你有一个Parameter类:
class Parameter
{
private:
float _parameter, _parameterScaler;
public:
Parameter()
{
_parameter = 1;
_parameterScaler = 0.5;
}
void SetValue(float value)
{
_parameter = value;
}
void SetValueOffset(float value)
{
_parameterScaler = value;
}
float "use of variable of this class"
{
return _parameter * _parameterScaler;
}
}
这个类有两个浮点数,一个是参数值,另一个是参数乘数。
现在,如果我使用Parameter类型的变量如下:
int main()
{
Parameter param;
param.SetValue(5);
param.SetValueOffset(0.5);
printf("%6.2f", param);
}
它打印:2.5。
例如,我可以通过使用 () 的运算符重载来实现这样的效果。是否可以仅使用可变用法?