小小菜鸟对"&"用途的问题
小弟正在自学c++,对"&"有些不明白。"&"的用途不就是:(1)取地址,(2)按位与 ,(3)&&是逻辑中的与
但是在有些地方我就不清楚了。
例如:
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------
class Array
{
public:
Array(int n);//实现构造函数,为类Array的对象分配一个包含n个数组元素的整形数组。
~Array();
int & operator [](int n);//重载运算符[],功能:如a为Array型,则a[n]=y,实现对a的第n个元素赋值。(此处的&的作用就不明白了)
Array & operator = (Array &obj);//重载运算符=,实现Array型的对象的相互赋值。(此处出现两个&,第一个我想作用和上一行的作用一样吧;第二处的作用我也不知道//丢人了啊。。)
int operator == (Array &obj);//重载运算符==;实现对Array类型的对象是否相等的判断。(此处两个问题:第一,重载[]时不也是int型嘛,为什么这里没有&;第二还是对&作用的问题。)
private:
int size;
int *ptr;
};
//---------------------------------------------------------------------------------------------------------------------------------------------------------------------
希望可以得到各位高手的解答。谢谢。。。