動態陣列 筆記

2021-08-24 23:21:47 字數 1594 閱讀 6922

.h

typedef

struct dynamicarray

darr;

class darray

;

.cpp

//初始化

darr* darray::init()

//插入

void darray::push_back(darr* array, int value)

//插入新元素

array->paddr[array->size] = value;

array->size++;

}//根據位置刪除

void darray::remove_pos(darr* array, int pos)

array->size--;

}//根據值刪除

void darray::remove_value(darr* array, int value)

//查詢相同的值,返回所在的位置,沒有找到返回-1

int darray::find_array(darr* array, int value)

}return pos;

}//列印

void darray::print_array(darr* array)

cout

<< endl;

}//獲取動態陣列容量

int darray::capacity_array(darr* array)

//獲取動態陣列當前元素個數

int darray::size_array(darr* array)

//根據位置獲取某個位置的元素

int darray::at_array(darr* array, int pos)

//清空陣列

void darray::clear_array(darr* array)

//釋放動態陣列記憶體

void darray::delete(darr* array)

測試

int main()

cout

<< "陣列容量:"

<< myarray.capacity_array(myarray.array) << endl;

cout

<< "陣列大小:"

<< myarray.size_array(myarray.array) << endl;

//列印

myarray.print_array(myarray.array);

//刪除

myarray.remove_value(myarray.array,0);

//列印

myarray.print_array(myarray.array);

//查詢

int pos = myarray.find_array(myarray.array,6);

cout

<<"位置6的值:"

<< pos << endl;

//銷毀

myarray.delete(myarray.array);

return

0;}

c 複習筆記(動態陣列)

動態分配記憶體建立陣列 int ptr net point 2 int ptr net point 2 有無括號的差別是 有括號的裡面不能帶引數,但是陣列全部初始化為0。而用new建立的基本物件型別括號裡可以有初始化的數值。刪除 基本資料型別 delete 指標名 陣列 delete 指標名下面是v...

c 動態陣列學習筆記

1.動態陣列 之所以出現動態陣列,是由於靜態陣列的大小是固定的。當我們一開始並不知道需要多大的陣列時,靜態陣列就無法使用了。2.操作 動態陣列是使用指標來承載malloc 或new操作符動態分配的記憶體空間,然後在需要的更新陣列大小的時候釋放空間使用free 或delete。3.使用malloc 和...

筆記 動態陣列new和delete

1 c 中可以使用指標來動態建立陣列,具體的例子如下 建立乙個n n的矩陣 int result 定義乙個二維指標陣列 int n cin n result new int n for int i 0 inew int n for int i 0 ifor int j 0 j0 給陣列賦初值 下面對...