下标运算符重载【】

来源:互联网 发布:google学术 知乎 编辑:程序博客网 时间:2024/05/29 21:34
#include <iostream>using namespace std;class charArray{public:charArray(int len){length = len;buffer = new char[length];}int getLength(){return length;}char & operator[](int i);~charArray(){delete[] buffer;}private:int length;char *buffer;};char & charArray::operator[](int i){static char ch = 0;if(i>0 && i < length)return buffer[i];else{cout<<"out of range!"<<endl;return ch;}}int main(){int i;charArray str1(8);char * str2 = "string";for(i=0;i<7;i++){str1[i] = str2[i];}for(i = 0;i< 7;i++){cout<<str1[i];}cout<<str1.getLength()<<endl;return 0;}

原创粉丝点击