请问:CPoint类与POINT在使用上有什么区别??

解决方案 »

  1.   

    CPoint有很多成员变量和函数啊,但POINT只是一个结构而已!
      

  2.   

    CPoint和POINT可以相互直接转化
      

  3.   

    参数不同你可以转换的,CPoint(x,y),CPoint(POINT initpt)都可以。
    具体一查MSDN就知道了。
      

  4.   

    POINT是一个结构,CPoint是一个属性为POINT的类,有很多方法。
      

  5.   

    需要POINT时,CPoint可以直接换用,没区别
    尽管CPoint时,传值的话直接可以直接换用POINT,因为CPoint的构造函数会自动转,
    传引用的话就要显式转一下
      

  6.   

    POINT只有数据成员而CPoint还有成员函数,CPoint是MFC中定义的,POINT是Windows平台的
      

  7.   

    fix:
    尽管CPoint时
     ->
    需要CPoint时
      

  8.   

    上面的我没看懂,请哪为大哥给示范一下CPoint s; s是如何转换为POINT结构的好么??谢谢!
      

  9.   

    typedef struct tagPOINT
        {
        LONG x;
        LONG y;
        } POINT;class CPoint : public tagPOINT
    {
    public:
       ...
    };CPoint s同时也是一个POINT结构,不用转,直接用
      

  10.   

    我要做的是用Polygon画图但Polygon需要的是POINT结构我定义的是CPoint 数组怎么做??
      

  11.   

    同样点集合,同样用Polygon画图,用CPoint 和POINT定义所画的结果不一样,为什么??
      

  12.   

    搞清最基本和最重要的一点CPoint是mfc的。POINT是sdk的。
    to abc:
    polygon一般要的是点数组,不是一个点,(当然,你要画一个点组成的多边形,就传一个POINT)。
    现在回答abc最后一贴中的问题:
    在mfc下
    CPoint cc(30,40);
    polygon(cc,1);
    在sdk下,我就不说了,你都用CPoint了,不会是sdk下了。
      

  13.   

    是啊,POINT是系统GDI的一个结构体,MFC把它封装成了CPoint,这样的例子还很多,比如RECT和CRect等。CPoint重载了一个操作符POINT,所以可以在要求POINT参数的地方直接用CPoint。
      

  14.   

    CPoint没有重载操作符,可以直接用的原因是它继承自POINT
      

  15.   

    同样点集合,同样用Polygon画图,用CPoint 和POINT定义所画的结果不一样,为什么??我没发现这个问题
      

  16.   

    不好意思,我错了。我还以为CPoint和CBrush一样呢,谢谢指正。
      

  17.   

    其实我认为是这样的,CPoint类中包括一个PIONT类型的数据成员和各种类成员函数,其类成员函数则是对这个POINT结构的各种操手罢了!