/**
*cppTest-7.5:重載下標運算符[]
*
*下標操作符“[]”是一個二元操作符,在基本類型中,將其作爲數組的下標運算符而使用,自然,其第二個操作數必須是整數,如a[3]。
*在C++中,可以通過重載來改變這種用法。
*@@需要說明的是,對下標運算符重載定義只能使用成員函數,而不能採用友元函數。
*author 煒sama
*/
#include<iostream.h>
class vector{
float v[4];
public:
vector() { v[0]=v[1]=v[2]=v[3]=0; }
float& operator[](int i) { return v[i];}//返回引用是必須的,這使vto[2]可以用在賦值運算符的左邊。
};
class matrix{
vector m[4]; //說明一個有四個元素的對象數組
public:
vector& operator[](int i){ return m[i]; }
};
void main()
{
matrix mat1;
mat1[1][2]=5;
float m1=mat1[1][2];
cout<<m1;
}
cppTest-7.5:重載下標運算符[]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.