在C ++中重载数组索引运算符[]
运算符重载在面向对象的编程语言功能中具有重要作用。运算符重载是一种编译时或静态多态性。
算法
Begin Create a class Arr and declare size of array. Inside the class, initialize all the elements by using for loop. Print the all elements. End.
范例程式码
#include <iostream>
#include <stdlib.h>
using namespace std;
const int M = 7;
class Arr {
private:
int A[M];
int size;
public:
Arr(int s, int v) {
if(s>M) {
cout<<endl<<"This is beyond maximum size";
exit(1);
}
size = s;
for(int i=0;i<size;i++)
A[i] = v;
}
int& operator[](int i) {
if( (i<0) || (i>=size) ) {
cout<<endl<<"Error: Array out of bound";
exit(1);
}
return A[i];
}
};
int main() {
int i=0;
Arr a(7,0);
for(i=0;i<7;i++)
a[i] = i*10;
cout<<"数组元素是:"<<endl;
for(i=0;i<7;i++) {
int val = a[i];
cout<<val<<endl;
}
return 0;
}输出结果
数组元素是: 0 10 20 30 40 50 60
热门推荐
1 训练狗狗基础
2 怎么训练狗狗笑
3 怎么训练狗狗卧下
4 上海狗狗训练基地
5 训练狗狗排便
6 狗狗基础训练
8 如何训练狗狗装死
9 狗狗站姿训练
10 狗狗训练用品
11 训练狗狗吧
12 狗狗要怎么训练
13 怎么训练狗狗玩球
14 训练狗狗唤回
15 狗狗训练躺下
16 狗狗训练指令
17 狗狗的训练技巧
18 狗狗不好训练