我在A类中声明一个公有变量,怎么在B类中调用不了呢。比如:class CA : public CObject
     {
          public:
              float m_fX0, m_fY0;
      };
在B类中我这样调用不对吗?
    void CB::XXX()
    {
         float fX0,fY0;
         CB b;
         fX0 = b.m_fX0;
         fY0 = b.m_fY0;
    }
请问怎么将另一个类的值传到此类中声明的变量来。

解决方案 »

  1.   


        void CB::XXX()
        {
             float fX0,fY0;
             CB b; //这里是CB
             fX0 = b.m_fX0; // m_fX0是CA的成员,不是CB的成员
             fY0 = b.m_fY0;
         }
      

  2.   

    class CA : public CObject
         {
              public:
                  float m_fX0, m_fY0;
          };
    这样调用:
        void CB::XXX()
        {
             float fX0,fY0;
             CA b;          //CB-->CA 
             fX0 = b.m_fX0;
             fY0 = b.m_fY0;
        }
      

  3.   

    对不起打错了,是CA b;但是编译出现以下错误:error C2512: 'CShip' : no appropriate default constructor available
      

  4.   

    class CA : public CObject
         {
              public:
                  CA(){}
                  float m_fX0, m_fY0;
          };