第12周專案3 陣列類運算的實現

2021-07-12 01:53:57 字數 1071 閱讀 9508

/*

*檔名:zhang.cpp

*完成日期:2023年5月25日

*版本號:v1.0

**問題描述:設計陣列類array,為了實現測試函式中要求的功能,請補足相關的函式

*(構造、析構函式)和運算子過載的函式。請注意引用的用法。 。

*/#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)

//過載+

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

//過載""

int &array::operator (int n)

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

const int &array::operator (int n) const

void array::resize(int sz)

{ assert(sz >= 0); //檢查sz是否非負

if (sz == size) //如果指定的大小與原有大小一樣,什麼也不做

return;

int* newlist = new int [sz]; //申請新的陣列記憶體

int n=(sz

學習心得;

在這個函式寫的時候出現了很多的問題,在寫的時候老是考慮不全面,一開始沒有加上覆制的構造的函式和過載的常函式,還需要乙個getsize函式返回size,要記住這種形式【n = (sz < size) ? sz : size】,在【array::resize(int sz)】中的動態陣列需要釋放。



第12周專案3 陣列類運算的實現

檔名稱 第12周專案3 陣列類運算的實現 完成日期 2016.5.19 版本號 v1.0 輸入描述 程式輸出 includeusing namespace std class array array array int sz 建構函式 過載下標運算子,實現與普通陣列一樣通過下標訪問元素,並且具有越界...

第12周專案3 陣列類運算的實現

檔名稱 test.cpp 版本 code blocks 輸入描述 程式輸出 include include include using namespace std class array array array int sz 建構函式 array array int a,int sz array a...

第12周專案1 實現複數類中的運算過載(3)

檔名稱 main.cpp 作 者 岳成豔2016年5月22號 版 本 號 vc 6.0 問題描述 請用類的友元函式,成員函式,定義複數類過載運算子 使之能用於複數的加減乘除。程式輸入 略 程式輸出 略 includeusing namespace std class complex complex ...