标签:语句 参数类型 关系 参数 数组越界 c++学习 动态内存 释放 多次
格式
P=new T;
sizeof(T)
字节的内存空间,并且将该内存空间的起始地址赋值给P。int *pn;
pn=new int;
*pn=5;
P=new T[N]
int *pn;
int i=5;
pn=new int [i*20];
pn[0]=20;
pn[100]=100;//编译时不会出错,运行时会出现数组越界现象
new T;
new T [n];
delete 指针;//该指针必须指向new分配出来的空间
int *p=new int;
*p=5;
delete p;
delete p;//导致异常,一片空间不能被delete多次
delete [] 指针;//该指针必须指向new出来的数组
int *p=new int [20];
p[0]=1;
delete [] p;
inline
关键字,即可定义内联函数inline int max(int a,int b)
{
if(a>b)
return a;
else
return b;
}
k=max(n1,n2);
的调用,则等价于if(n1>n2)
tmp=n1;
else
tmp=n2;
k=tmp;
int max(double f1,double f2){}
int max(int n1,int n2){}
int max(int n1,int n2,int n3){}
max(3.4,2.5);//调用第一个
max(2,4);//调用第二个
max(1,2,3);//调用第三个
max(3,2.4);//error,二义性
void func(int x1,int x2=2,int x3=3){}
func(10);//等价于func(10,2,3)
func(10,8);//等价于func(10,8,3)
func(10,,8);//不行!只能是最右边的连续若干参数缺省
标签:语句 参数类型 关系 参数 数组越界 c++学习 动态内存 释放 多次
原文地址:https://www.cnblogs.com/2002ljy/p/12244016.html