#include <iostream> using namespace std; class Array{ public: Array(int size):m_data(new int[size]),m_size(size){} ~Array(void){ delete[] m_data; m_data = NULL; } int& operator[](int i){ //常版本 return m_data[i]; } int& operator[](int i)const{ //非常版本 return const_cast<Array&>(*this)[i]; //复用非常版本 } private: int* m_data;//一个数组主要包括,数组的首部元素地址和数组的元素个数 int m_size; }; int main(void){ Array a(10); a[0] = 1; a[1] = 2; a[2] = 3; for(int i=0;i<10;++i){ cout << a[i] << endl; } //1 2 3 0 0 0 0 0 0 0 //注意:int* p = new int[10];初始化元素都为0 return 0; }
常对象只能调常版本,非常对象既能调非常版本,也能调常版本.
专注于为中小企业提供网站建设、成都网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业绥中免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了近1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
新闻标题:自定义数组类(下标操作符重载)
网站URL:https://www.cdcxhl.com/article22/jsgicc.html
成都网站建设公司_创新互联,为您提供自适应网站、定制开发、App开发、微信公众号、网站营销、品牌网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联