C++運算符new、delete

在軟件開發(fā)中過程中,常常需要動態(tài)地分配和撤銷內存空間,例如對動態(tài)鏈表中結點的插入與刪除。

10年積累的網(wǎng)站制作、成都網(wǎng)站制作經驗,可以快速應對客戶對網(wǎng)站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡服務。我雖然不認識你,你也不認識我。但先建設網(wǎng)站后付款的網(wǎng)站建設流程,更有湛河免費網(wǎng)站建設讓你可以放心的選擇與我們合作。

new int;  //開辟一個存放整數(shù)的存儲空間,返回一個指向該存儲空間的地址(即指針)。
new int(100); //指定該整數(shù)的初值為100
new char[10]; //包含10個字符的空間
new int[5][4]; //二維數(shù)組(5*4)
float *p=new float(3.14159); //地址賦給指針變量p

new 運算符使用的一般格式為
new 類型[初值];//用new分配數(shù)組空間時不能指定初值。如果由于內存不足等原因而無法正常分配空間,則new會返回一個空指針NULL,用戶可以根據(jù)該指針的值判斷分配空間是否成功。
delete運算符使用的一般格式為
delete[ ]指針變量;

delete p;
delete [ ]pt; //在指針變量面前加一對方括號,表示對數(shù)組空間的操作。

對象的動態(tài)建立和釋放
定義的對象是靜態(tài)的話,在程序運行過程中,對象所占的空間是不能隨時釋放的。例如在一個函數(shù)定義了一個對象,只有在該函數(shù)結束時,該對象才釋放。但有時人們希望在需要用到對象時才建立對象,在不需要用該對象時就撤銷它,釋放它所占的內存空間以供別的數(shù)據(jù)使用。這樣可以提高內存空間的利用率。

class Box{
private:
    int height;
    int width;
    int length;
public:
    Box();
    Box(int,int,int);
    ~Box();
    Box(Box &b);
    void volume();
};
new Box;           //動態(tài)建立一個對象
Box *pt;             //定義一個指向Box對象的指針變量pt
pt=new Box;      //在pt中存放了新建對象的起始地址
pt-->height;       //調用對象的height成員
pt-->volume();   //調用對象的volume函數(shù)
Box *pt=new Box(12,15,18);

//釋放內存空間
delete pt;

網(wǎng)頁標題:C++運算符new、delete
本文路徑:http://bm7419.com/article40/jcseeo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作Google、定制開發(fā)、外貿建站、全網(wǎng)營銷推廣關鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)