C++重载下标操作符[](二)
生活随笔
收集整理的這篇文章主要介紹了
C++重载下标操作符[](二)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include <iostream>
using namespace std;class Array{
public:Array(int length=0);//構造函數~Array(); //析構函數public:int &operator[](int i); //重載操作符[]const int &operator[](int i)const ;public:int length() const {return m_length;} //獲取數組長度void display() const;private:int m_length; //數組長度int *m_p; //數組指針
};//新初始化一個數組
Array::Array(int length):m_length(length) {if (length==0){m_p=NULL;}else{m_p=new int [length];}
}Array::~Array(){delete [] m_p;
}int &Array::operator[](int i){return m_p[i];
}const int & Array::operator[](int i) const {return m_p[i];
}void Array::display() const {for (int i=0;i<m_length;i++){cout<<m_p[i]<<" ";}cout<<endl;}int main(){int n=10;//初始化一個長度為n的數組,在c++中初始化的數組元素都是0Array A(n);//對A中的元素進行賦值for (int i=0,len=A.length()+100;i<len;i++){A[i]=i*5;}A.display();const Array B(n);B.display();cout<<"最后一個數="<<B[1000]<<endl;return 0;
}
總結
以上是生活随笔為你收集整理的C++重载下标操作符[](二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++类模板(二)用类模板实现可变长数组
- 下一篇: 模板编程的来龙去脉