設定義乙個類:
class listarray
;請完成該類成員函式的定義和測試程式的設計。
【提示】編寫void put(int n)函式時,注意考慮陣列滿的情況。如果陣列已滿,則沒有空間儲存n,此時需動態申請新的記憶體空間,其大小應比原陣列大小大1,並將原陣列元素備份到新陣列,新陣列的最後乙個元素存放n,當然不要忘記釋放為原陣列動態分配的記憶體空間。
listarray.h:
#ifndef _listarray_h_
#define _listarray_h_
class listarray
;#endif
listarray.cpp:
#include "listarray.h"
#include using namespace std;
listarray::listarray(int s)
void listarray::put(int n)
else
else p[elem++] = n;
}}void listarray::print()
輸出結果:
1 2
1 2 3
1 2 3 4
C new和delete的使用
new和delete已經完全包含malloc和free的功能,並且更強大 方便 安全。使用動態分配記憶體時不能忘記釋放記憶體,不要忘記出錯處理!下面先看new和delete的基本使用方法。複製 純文字新視窗 include using namespace std intmain 釋放記憶體 dele...
C New和Delete 用法知其然
new和delete都是c 常用關鍵字,但是內部原理著實不簡單,我此篇是站在淺學用之的角度來歸納其表面使用和淺層原理。如果想深入理解這兩個關鍵字我推薦一下這篇部落格 首先在用法明確幾點 1.他們是系統關鍵字。2.他的標準實現在c 標準標頭檔案是 include 實際上引用了的話會間接引用到 3.我們...
C new和delete的用法
對於計算機程式設計而言,變數和物件在記憶體中的分配都是編譯器在編譯程式時安排好的,這帶來了極大的不便,如陣列必須大開小用,指標必須指向乙個已經存在的變數或物件。對於不能確定需要占用多少記憶體的情況,動態記憶體分配解決了這個問題。new和delete運算子是用於動態分配和撤銷記憶體的運算子。一 new...