1、动态内存
跟java,php等语言相同。
栈:在函数内部声明的所有变量都将占用栈内存。
堆:这是程序中未使用的内存,在程序运行时可用于动态分配内存
[1].C++中使用new()来创建对象,分配内存。使用delete()删除之前由new()分配的内存。
举例:
#include <iostream>
using namespace std;
int main ()
{
double* pvalue = NULL; // 初始化为 null 的指针
pvalue = new double; // 为变量请求内存
*pvalue = 29494.99; // 在分配的地址存储值
cout << "Value of pvalue : " << *pvalue << endl;
delete pvalue; // 释放内存
return 0;
}
[2].数组的动态内存分配
一位数组:
int *array=new int [m]; // 动态分配,数组长度为 m
delete [] array; //释放内存
二维数组
int **array
array = new int *[m]; // 假定数组第一维长度为 m, 第二维长度为 n
for( int i=0; i<m; i++ )
{
array[i] = new int [n] ;
}
//释放
for( int i=0; i<m; i++ )
{
delete [] array[i];
}
delete [] array;
2、命名空间
命名空间的概念跟php相同,不再多说,只看c++中的使用方法。
[1].命名空间的定义
namespace namespace_name {
// 代码声明
}
[2].调用带有命名空间的函数或变量
name::code; // code 可以是变量或函数
[3].using指令
使用using指令,来使用命名空间,如:using namespace std;
[4].命名空间可以嵌套使用。