C 實踐參考 陣列類運算的實現

2021-09-23 17:31:21 字數 1431 閱讀 2416

class array

;//要求測試函式能夠執行出正確、合理的結果:

int main()

; int b[8]= ;

array array1(a,8),array3,array4;

const array array2(b,8);

array4=array3=array1+array2;

array3.show();

array4.resize(20);

array4[8]=99;

cout

<8]<3]0;}

[參考解答]

#include 

#include

#include

using

namespace

std;

class array

;array::array(int sz) //建構函式

array::array(int a, int sz)

array::~array() //析構函式

//拷貝建構函式

array::array(const array &a)

array array::operator + (const array &a2)

//過載"="運算子,將物件a2賦值給本物件。實現物件之間的整體賦值

array &array::operator = (const array& a2)

//從物件x複製陣列元素到本物件

for (int i = 0; i < size; i++)

list[i] = a2.list[i];

}return *this; //返回當前物件的引用

}//過載下標運算子,實現與普通陣列一樣通過下標訪問元素,並且具有越界檢查功能

int &array::operator (int n)

//常物件時,會呼叫這個函式,運算結果(引用)將不能再被賦值

const

int &array::operator (int n) const

//取當前陣列的大小

int array::getsize() const

//將陣列大小修改為sz

void array::resize(int sz)

void array::show() const

; int b[8]= ;

array array1(a,8),array3,array4;

const array array2(b,8);

array4=array3=array1+array2;

array3.show();

array4.resize(20);

array4[8]=99;

cout

<8]<3]0;}

C 實踐參考 陣列類運算的實現

class array 要求測試函式能夠執行出正確 合理的結果 int main int b 8 array array1 a,8 array3,array4 const array array2 b,8 array4 array3 array1 array2 array3.show array4....

C 實踐參考 陣列類模板

專案 陣列類模板 在陣列類的基礎上,將之改造為類模板,以使陣列中可以儲存各種型別的資料。template t 陣列類模板定義 class array include include include using namespace std template 陣列類模板定義 class array te...

C 實踐參考解答 我的陣列類

專案 我的陣列類 閱讀程式,請完成成員函式的定義,因為存在指標型的資料成員,注意需要深複製的建構函式。include using namespace std class myarray 寫出各成員函式的定義 int main myarray r1 b,10 cout 最大值 myarray r2 c...