CArray<Example, Example&> a;
Example b;  //b里面有个数据成员data
b.data = 20;
a.Add(b);
a[0].data = 100;现在希望把一个b的引用加到CArray a里,
即改变a[0].data的值后,b的值也随之改变。

解决方案 »

  1.   

    Example & b=a[0];
    这样b和a[0]同时变化了。
      

  2.   

    不是这个意思,哥们搞错意思了。是先有b,再把b的引用加到a里。
    而不是做一个a[0]的引用。
      

  3.   

    按照你的声明,CArray中保存的是Example类型的元素,是值而不是指针或者引用,所以你的想法是没法实现的。如果必须实现你说的功能,你可以把a的声明改成这样:
    CArray<Example*, Example*> a;
    Example b * = new Example;
    a.add(b);