C++ new 的使用
生活随笔
收集整理的這篇文章主要介紹了
C++ new 的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
new 關鍵字的作用
用于動態分配內存空間的
什么時候用到new
說到這個我先大致說下,C++ 中的存儲方法大致有 自動存儲,靜態存儲,和動態存儲.
靜態存儲:聲明變量的時候前面添加static 關鍵字
自動存儲: 這個舉個例子,在一個函數A里面定義了一個變量并初始化, int a =10 ; 這個就是自動存儲,
a僅當A()函數活動時存在。當成許控制權回到main()時,a使用的內存將自動被釋放,
這也是為為啥自動存儲不能使用new 的原因,因為內存會自動釋放呢,java 里面不會釋放內存,所以java 里面可以自定義變量的時候初始化,
動態存儲:數據的聲明周期不完全受程序或函數的生命時間控制 ,所以C++ 中有new 來分配空間,不過由于內存不會自動釋放,所以使用完之后還需要使用delete 來釋放內存.
C++ new 的方法:
1 單獨的變量分配內存
#include <iostream>
#include <string>
using namespace std;
// 普通的指針,與new 對比
int main()
{int b = 100;int *p;p = &b;//或者// int *p =&b;cout << *p << endl;// 使用new 分配內存空間int *c = new int;*c =100;// 或者// int *c = new int(100);cout << *c << endl;// 使用delete釋放內存delete p;
}
2 對象分配內存
#include <iostream>
#include <string>
using namespace std;class Anima
{
public: void a_fun(){cout << "AAAAA" << endl;}
};int main()
{//分配一個對象的空間Anima* anima = new Anima();anima->a_fun();delete anima;return 0;
}
3 與關鍵字operator 在一起使用,
?這個自己用的比較少,一時想不到很好的demo 就不寫了,目前先記住有這種使用的方法.
總結
以上是生活随笔為你收集整理的C++ new 的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android.mk 里面内容介绍
- 下一篇: 情侣头像网名个性签名全套