2015年1月28日 星期三
C++ Pointer 指標介紹 (2)
Pointer 有一個很大的用處,就是動態記憶體配置(Dynamic Memory Allocation)。
c++ provide了兩個有關Dynamic Memory Allocation的operator :
1. new : 申請配置記憶體,自己控制記憶體大小。
2. delete : release所配置了的記憶體空間。
new 語法:
(data type) *(pointer variable) = new (data type) [size];
e.g.
int *ip = new int [4]; // pointer ip 將會使用 16bytes , 因為int type 是佔 4bytes, 4*size = 16 bytes
float *fp = new float [4];
or
int *ip = new int;
float *fp = new float;
註:不一定需要size的指定,如果沒有指定,compiler會以size=1為依據。
delete 語法:
delete (pointer variable)
e.g.
int b = 10;
int *a = &b;
delete a; // 將會release a 指向b的記憶體空間
宣告後的記憶體,如果程式不會再用到,就可以使用delete來release記憶體空間,
防止程序執行期間有記憶體空間不足的情況發生。
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言