c++谁来帮我注释一下这段程序,看不懂

#include<iostream.h>
class point
{
public:
static int number;
point(){number++;}
~point(){number--;}
};
int point::number=0;
void main()
{ point *ptr;
point a,b;
{ point *ptr_point=new point[3];
ptr=ptr_point;
}
point c;
cout<<point::number<<endl;
delete []ptr;
}

#include<iostream.h>
//定义一个point 类
class point
{
public:
static int number;//静态变量 声明 静态变量属于类不属于对象
point(){number++;}//构造函数
~point(){number--;}//析构函数
};
int point::number=0;//静态变量类外初始化
void main()
{ point *ptr;//定义一个指向point的指针
point a,b;//定义 对象
{ point *ptr_point=new point[3];//用new 出来三个point
ptr=ptr_point;//赋值
}
point c;
cout<<point::number<<endl;
delete []ptr;//delete 会调用析构函数
}追问

还不是很明白额point *ptr_point=new point[3] 中的point[3]是什么意思,delete []ptr中的[]ptr是什么意思

追答

point[3]就是一个point数组 3代表个数
delete []ptr 就是释放你申请的数组 new 和delete要成对使用

追问

不好意思啊,我想再问下那构造函数一共调用了几次,分别是哪几次,再就是我不懂[]ptr 前这个[]符号是什么意思

追答

5次 [] 就是表示释放的是一个数组

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答