3-3-8. 添字演算子のオーバーロード
公開日: 17:03 3. オブジェクト指向編/3-3. オーバーロード/3-3-8. 添字演算子のオーバーロード
添字演算子([])は一般的に配列の要素へのアクセスに使われます。この演算子はC++配列の既存の機能を強化するのにオーバーロードすることが可能です。
次の例はどのようにして添字演算子をオーバーロードするかを示しています。
#include <iostream>
using namespace std;
const int SIZE = 10;
class safearay
{
private:
int arr[SIZE];
public:
safearay()
{
register int i;
for(i = 0; i < SIZE; i++)
{
arr[i] = i;
}
}
int &operator[](int i)
{
if( i > SIZE )
{
cout << "範囲外です" <<endl;
// 先頭の要素を返す
return arr[0];
}
return arr[i];
}
};
int main()
{
safearay A;
cout << "A[2]の値: " << A[2] <<endl;
cout << "A[5]の値: " << A[5]<<endl;
cout << "A[12]の値: " << A[12]<<endl;
return 0;
}
上のコードをコンパイルし実行すると、次の結果が得られます。A[2]の値: 2
A[5]の値: 5
範囲外です
A[12]の値: 0
0 件のコメント :
コメントを投稿