重载数组下表操作符

来源:互联网 发布:传奇霸业转生数据汇总 编辑:程序博客网 时间:2024/05/16 18:22

为了保证数组动态存储过程中不越界,可以利用C++的类定义一种更安全功能更强的类型,可以为该类定义重载下标操作符[]函数,例程如下:

 

#include<iostream>using namespace std;class A{public:A(){};A(int l):length(l){size=new char[length];}~A(){delete []size;}char& operator [](int i){if(i<length)return size[i];cout<<"超出数组作用域"<<endl;return size[length-1];}private:int length;char*size;};int main(){A a(8);int i;while(cin>>i){a[i]='c';cout<<a[i]<<endl;}return 0;}


1、重载下标操作符的优点是不用将数组的长度定义为一个常量。

2、可避免数组越界