我有一个MyFloat类:

class MyFloat
{
public:
float value = 0.0;
}

到目前为止,我以这种方式使用它:
MyFloat *myfloat1 = new MyFloat;
myfloat1->value = 1.0;

我该怎么做
myfloat1 = 2.0;
if (myfloat1 < 3.0){
...
}

最佳答案

您可以使用operator=operator float

class MyFloat
{
public:
    float value = 0.0;
    MyFloat& operator=(float f)
    {
        value = f;
        return *this;
    }

    operator float() const
    {
        return value;
    }
};

int main() {

    MyFloat f;
    f = 10.0f;

    float x;
    x = f;
    return 0;
}

10-08 20:23