亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

詳解C++ 動態內存分配與命名空間

2020-05-23 13:30:24
字體:
來源:轉載
供稿:網友

1、C++中的動態內存分配

  • 通過new關鍵字進行動態內存申請
  • C++中的動態內存申請時基于類型進行的
  • delete關鍵用于內存釋放

C語言其實是不支持動態內存分配的,是通過malloc庫函數來實現的,可能有一些硬件根本不支持malloc;而C++ new是一個關鍵字,不管在任意編譯器上,任意硬件平臺上都是能夠進行動態內存分配的,這是本質區別。

malloc是基于字節來進行動態內存分配的,new則是基于類型來進行動態內存分配

// 變量申請:Type * pointer = new Type;  // 從堆空間獲取一個新的Type類型的空間// 使用和C語言一樣delete pointer;    // 這里指的是pointer所指向的那個元素的內存空間被釋放// 數組申請:Type * pointer = new Type[N];  // N指數組大小,數組元素個數,并非字節數// delete[] pointer;  // 數組的釋放,需要在delete后面加[],和變量有區別          // delete[] 說明所要釋放的指針是指向一片數組空間的,釋放整個數組空間,如果用delete的話,pointer指向的是數組的首元素地址,釋放的就是首元素的內存空間,其余元素的內存空間并沒有釋放,會造成內存泄漏
#include <stdio.h>int main(){  int* p = new int;      *p = 5;  *p = *p + 10;    printf("p = %p/n", p);  printf("*p = %d/n", *p);    delete p;    // 指釋放單個變量    p = new int[10]; // p指向一片數組空間,  // p所指向的內存空間,至少占用了40個字節,保證夠用,可能分配得更多    for(int i=0; i<10; i++)  {    p[i] = i + 1;        printf("p[%d] = %d/n", i, p[i]);  }    delete[] p;  // 釋放數組    return 0;}

new關鍵字與malloc函數的區別:

  • new關鍵字是C++的一部分
  • malloc是由C庫提供的函數
  • new以具體的類型為單位進行內存分配
  • malloc以字節為單位進行內存分配
  • new在申請單個類型變量時可以進行初始化
  • malloc不具備內存初始化的特性

new關鍵字的初始化:

int*  pi = new int(1);float* pf = new float(2.0f);char* pc = new char('c')l

2、C++中的命名空間

在C語言中只有一個全局作用域

  • C語言所有的全局標識符共享同一個作用域
  • 標識符之間可能發生沖突

C++中提出了命名空間的概念

  • 命名空間將全局作用域分成不同的部分
  • 不同命名空間中的標識符可以同名而不會發生沖突
  • 命名空間可以相互嵌套
  • 全局作用域也叫默認命名空間

定義:

namespace Name{  namespace Internal  {    /* ... */  }  /* ... */}

命名空間的使用

using namespace name;   // 使用整個命名空間using name::variable;   // 使用命名空間中的變量::variable;        // 使用默認命名空間中的變量
#include <stdio.h>namespace First{  int i = 0;}namespace Second{  int i = 1;    namespace Internal  {    struct P    {      int x;      int y;    };  }}int main(){  using namespace First;  using Second::Internal::P;    printf("First::i = %d/n", i);  printf("Second::i = %d/n", Second::i);    P p = {2, 3};    printf("p.x = %d/n", p.x);  printf("p.y = %d/n", p.y);    return 0;}

命名空間解決了全局變量命名沖突的問題

3、小結

C++ 中內置了動態內存分配的專用關鍵字

C++ 中的動態內存分配可以同時進行初始化

C++ 中的動態內存分配時基于類型進行的

C++ 中命名空間概念用于解決名稱沖突問題

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91av中文字幕| 国产成人97精品免费看片| 欧美黑人xxx| 夜色77av精品影院| 亚洲国产私拍精品国模在线观看| 欧美日韩福利在线观看| 国产亚洲成精品久久| 久久成人精品视频| 欧美日韩国产区| 91精品一区二区| 久久成人精品一区二区三区| 欧美丝袜第一区| 日本精品久久电影| 亚洲国产中文字幕久久网| 高清一区二区三区四区五区| 国产精品久久久久久久av大片| 亚洲成色777777女色窝| 亚洲成av人影院在线观看| 日韩成人av在线播放| 国产精品国产亚洲伊人久久| 国产精品永久免费| 国产精品99久久久久久www| 亚洲r级在线观看| 少妇激情综合网| 国产亚洲视频在线观看| 久久国产精品久久久久久久久久| 日韩精品在线看| 国产欧美日韩中文字幕在线| 久久久免费高清电视剧观看| 成人写真视频福利网| 久久久综合av| 国产精彩精品视频| 自拍偷拍免费精品| 久久久久久久久久亚洲| 性色av香蕉一区二区| 国产成人精品优优av| 亚洲综合成人婷婷小说| 狠狠躁夜夜躁人人爽天天天天97| 欧美日韩一区二区免费视频| 69国产精品成人在线播放| 亚洲国产天堂久久综合| 高跟丝袜欧美一区| 亚洲香蕉伊综合在人在线视看| 国产精品美女免费| 自拍视频国产精品| 日韩精品日韩在线观看| 日韩成人xxxx| 国产成人久久久精品一区| 国产精品久久精品| 日本高清+成人网在线观看| 国产一区二区三区日韩欧美| 九九精品视频在线| 日韩欧美aⅴ综合网站发布| 国产精品午夜一区二区欲梦| 欧美高清视频免费观看| 国产精品一区二区久久| 欧美视频专区一二在线观看| 日韩在线视频观看| 欧美制服第一页| 2019国产精品自在线拍国产不卡| 欧美激情一区二区三区在线视频观看| 欧美激情2020午夜免费观看| 欧美一区二区三区免费视| 奇米一区二区三区四区久久| 亚洲已满18点击进入在线看片| 亚洲欧美在线免费观看| 91av免费观看91av精品在线| 欧美精品在线网站| 日韩av电影在线免费播放| 国产精品91一区| 国产精品青草久久久久福利99| 国产精品视频26uuu| 一区二区三区 在线观看视| 成人深夜直播免费观看| 亚洲自拍欧美另类| 精品露脸国产偷人在视频| 欧美亚洲国产另类| 国产91成人video| 成人免费在线视频网址| 国产精品电影观看| 久久精品免费播放| 青草青草久热精品视频在线观看| 日韩电影网在线| 亚洲精品xxx| 日韩欧美大尺度| 国产专区精品视频| 亚洲欧美福利视频| 国产欧美va欧美va香蕉在| 久久久av亚洲男天堂| 亚洲精品中文字幕有码专区| 26uuu另类亚洲欧美日本老年| 97视频在线观看免费高清完整版在线观看| 日韩成人免费视频| 亚洲日本欧美日韩高观看| 亚洲精品永久免费| 亚洲成人国产精品| 国产在线精品自拍| 97视频色精品| 91精品国产91久久久久久久久| 最近中文字幕日韩精品| 日韩欧美一区二区三区久久| 亚洲精品国产综合区久久久久久久| 精品美女久久久久久免费| 亚洲人成电影网站色| 久久中文久久字幕| 青青精品视频播放| 91麻豆桃色免费看| 国产精品免费电影| 社区色欧美激情 | 成人免费午夜电影| 日本韩国欧美精品大片卡二| 亚洲精品一区中文字幕乱码| 久久久精品视频成人| 欧美色欧美亚洲高清在线视频| 亚洲综合成人婷婷小说| 欧美中文字幕第一页| 欧美激情乱人伦一区| 欧美久久精品午夜青青大伊人| 亚洲第一区第一页| 欧美精品久久久久久久久久| 黑人巨大精品欧美一区免费视频| 久久久久久久亚洲精品| 96精品视频在线| 亚洲自拍小视频免费观看| 亚洲国产古装精品网站| 亚洲欧美中文另类| 国产免费一区二区三区在线能观看| 欧美成aaa人片免费看| 欧美成人精品一区| 亚洲精品一区二区三区不| 精品亚洲国产视频| 国产精品一区二区女厕厕| 日本亚洲欧洲色| 正在播放欧美视频| 欧美三级免费观看| 国产欧美久久久久久| 国产精品视频免费在线| 伊人伊成久久人综合网站| 亚洲一区二区少妇| 97免费在线视频| 国产亚洲精品久久久久久牛牛| 国产精品电影网| 中文字幕日韩精品在线| 精品视频9999| 国产精品偷伦一区二区| 国产亚洲精品久久久久久牛牛| 色狠狠久久aa北条麻妃| 欧美一级片一区| 精品国产一区二区三区久久| 欧美日韩国产精品| 青青青国产精品一区二区| 欧美一级淫片videoshd| 亚洲欧美一区二区三区情侣bbw| 91免费精品视频| 成人国产精品久久久| 欧美国产日本高清在线| 日韩欧美中文字幕在线播放| 萌白酱国产一区二区| 久久久成人精品| 日本中文字幕不卡免费| 国产精品视频网站| 日本三级久久久| 午夜精品国产精品大乳美女| 欧美精品免费在线观看|