none
想请高手指点下符号&的另类用法 RRS feed

答案

全部回复

  • 引用~


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.
    2011年8月22日 12:57
    版主
  • 这是引用....

    当调用Add函数时,形参会引用实参,既形参与实参共享同一个内存地址. 

    • 已标记为答案 Honny_yeyh 2011年8月23日 14:14
    2011年8月23日 5:44
  • class CCounter
    {
    public:
     CCounter():m_val(0){ }
     CCounter(unsigned initVal):m_val(initVal){ }
     ~CCounter(){}

     unsigned GetVal()const { return m_val; } 
     void SetVal(unsigned x) {m_val = x; }
     CCounter Add(const CCounter &cnt);
    private:
     unsigned m_val;
    };

    CCounter CCounter::Add(const CCounter & cnt)
    {
     CCounter temp;
     temp.SetVal(m_val+ cnt.GetVal());
     return temp;
    }

    int main()
    {
     CCounter counter1(1), counter2(3), counter3;//创建三个CCounter类对象
     counter3 = counter1.Add(counter2); //调用成员函数Add( )
     cout << "counter1的值是: " << counter1.GetVal() << endl;
     cout << "counter2的值是: " << counter2.GetVal() << endl;
     cout << "counter3=counter1+counter2的值是: " << counter3.GetVal() << endl;

     return 0;
    }

    2011年8月23日 11:46