最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++中new和delete的介紹

 更新時(shí)間:2018年12月21日 09:47:18   作者:蝸牛201  
今天小編就為大家分享一篇關(guān)于C++中new和delete的介紹,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

介紹

1.malloc,free和new,delete區(qū)別。

  • a.malloc,free是C/C++的標(biāo)準(zhǔn)庫(kù)函數(shù)。new,delete是c++的操作符。
  • b.malloc申請(qǐng)的是內(nèi)存,嚴(yán)格意義不是“對(duì)象”,new申請(qǐng)的可以理解為“對(duì)象”,new 時(shí)會(huì)調(diào)用構(gòu)造函數(shù),返回指向該對(duì)象的指針。
  • c.對(duì)于class類(lèi)型,必須用new/delete來(lái)創(chuàng)建和銷(xiāo)毀,自動(dòng)調(diào)用構(gòu)造和析構(gòu)函數(shù),malloc/free無(wú)法勝任。

2.使用new遵循原則:

  • a.用new申請(qǐng)的內(nèi)存,必須用delete釋放。
  • b.用new[]申請(qǐng)的內(nèi)存,必須用delete[]釋放。
  • c.delete釋放內(nèi)存后,指針值不變,良好的風(fēng)格是釋放后指針置為NULL,如,delete p; p = NULL。

使用

1.申請(qǐng)一個(gè)對(duì)象

 int* p1 = new int;
 delete p1;
 p1 = NULL;

2.申請(qǐng)多個(gè)對(duì)象

 int* p1 = new int[12];
 delete[] p1;
 p1 = NULL;

3.申請(qǐng)一個(gè)長(zhǎng)度為1024的char數(shù)組

 char* pArray = new char[1024];
 for (int i=0; i < 1024; i++)
 {
 pArray[i] = i;
 }
 delete[] pArray;
 pArray = NULL;

4.申請(qǐng)一個(gè)類(lèi)對(duì)象

#include <stdio.h>
class Student
{
public:
 char name[32];
 int age;
};
int main()
{
 Student* pStu = new Student();
 delete pStu;
 pStu = NULL;
 return 1;
}

5.申請(qǐng)1024個(gè)類(lèi)對(duì)象

#include <stdio.h>
class Student
{
public:
 int age;
 Student()
 {
 ...
 }
 ~Student()
 {
 ...
 }
};
int main()
{
 Student* pStu = new Student[1024];
 for (int i=0; i<1024; i++)
 {
 pStu[i].age = i+1;
 }
 delete[] pStu;
 pStu = NULL;
 return 1;
}

new多個(gè)對(duì)象不能傳參數(shù),要求該類(lèi)必須有默認(rèn)構(gòu)造函數(shù)。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

最新評(píng)論

兴文县| 广汉市| 屏东县| 蓬莱市| 靖州| 迭部县| 阿鲁科尔沁旗| 永和县| 贺兰县| 开平市| 舟山市| 新化县| 罗定市| 交城县| 安溪县| 黑河市| 唐河县| 彰化县| 彭水| 泰州市| 随州市| 石台县| 富源县| 临沧市| 郧西县| 肥城市| 文成县| 永昌县| 龙川县| 扬州市| 旬邑县| 团风县| 古田县| 忻城县| 镇远县| 陆良县| 兖州市| 筠连县| 汾西县| 东乡| 土默特左旗|