无法从const Point转换为const D2D1_POINT_2F

时间:2010-07-20 09:20:32

标签: c++

class ADot :
    public Shape
{
private:
    Point me_;
    operator D2D1_POINT_2F() const;//HERE I HAVE CONVERSION OPERATOR BUT IT DOES NOT WORK
public:
    ADot(signed, signed);
    ~ADot(void);
    void draw()const;
    Point center() const;
    Point north() const;
    Point south() const;
    Point east() const;
    Point west() const;
    Point nw() const;
    Point ne() const;
    Point sw() const;
    Point se() const;
};

错误:错误7错误C2664:'D2D1 :: Ellipse':无法将参数1从'const Point'转换为'const D2D1_POINT_2F&'

我收到此错误但我不知道如何编写将我的const对象转换为const D2D1_POINT_2F的运算符。

谢谢。

2 个答案:

答案 0 :(得分:1)

运营商被宣布为私人。公开

您还尝试将Point转换为D2D1_POINT_2F,但是在ADot类中声明了运算符

答案 1 :(得分:1)

您需要实现转换运算符。您所说的只是存在这样的转换 - 您尚未定义转换的工作原理。它也需要公开。