C++ 下標(biāo)運算符 [] 重載
C++ 下標(biāo)運算符 [] 重載
下標(biāo)操作符 [] 通常用于訪問數(shù)組元素。重載該運算符用于增強(qiáng)操作 C++ 數(shù)組的功能。
下面的實例演示了如何重載下標(biāo)運算符 []。
#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; }
當(dāng)上面的代碼被編譯和執(zhí)行時,它會產(chǎn)生下列結(jié)果:
$ g++ -o test test.cpp $ ./test A[2] 的值為 : 2 A[5] 的值為 : 5 A[12] 的值為 : 索引超過最大值 0
相關(guān)文章
- C++ 數(shù)據(jù)抽象
- C語言 基本語法
- C語言 作用域規(guī)則
- C# 基本語法
- C++ 類成員函數(shù)
- C語言 庫函數(shù) fclose()
- C語言 庫函數(shù) fopen()
- C語言 庫函數(shù) sprintf()
- C語言 庫函數(shù) fputc()
- C語言 庫函數(shù) malloc()
- C語言 庫函數(shù) log()
- C語言 庫函數(shù) floor()
- C語言 庫函數(shù) fmod()
- C語言 庫函數(shù) isupper()
- C語言 庫宏 EDOM
- C語言 庫函數(shù) strcspn()
- C語言 庫函數(shù) strxfrm()
- C語言 嵌套循環(huán)
- C++ if…else 語句
- C++ 強(qiáng)制轉(zhuǎn)換運算符