定义一个指针变量:
double** Ptr = new double*[10];
for(int i = 0; i < 10; i++)
{
Ptr[i] = new double[5];
}
释放指针变量的时候是不是如下:
for(int i = 0; i < 10; i++)
{
delete [] Ptr[i];
}
delete [] Ptr;
这样对不对?谢谢!
还有一个疑问,假如在类中声明对象时,用了new什么时候释放这个指针呢?谁来释放呢?
vc之际释放,还是需要编写函数,本人释放,将释放函数写在类中间(如析构函数)。
也就是说:
class animal
{
private:
double* Num = new double[5];
public:
~animal();
}
animal::~animal()
{
delete []Num;
}
不确定想的对不对,谢谢~~~
double** Ptr = new double*[10];
for(int i = 0; i < 10; i++)
{
Ptr[i] = new double[5];
}
释放指针变量的时候是不是如下:
for(int i = 0; i < 10; i++)
{
delete [] Ptr[i];
}
delete [] Ptr;
这样对不对?谢谢!
还有一个疑问,假如在类中声明对象时,用了new什么时候释放这个指针呢?谁来释放呢?
vc之际释放,还是需要编写函数,本人释放,将释放函数写在类中间(如析构函数)。
也就是说:
class animal
{
private:
double* Num = new double[5];
public:
~animal();
}
animal::~animal()
{
delete []Num;
}
不确定想的对不对,谢谢~~~
解决方案
5
嗯
5
题主的想法是对的……
10
You are right.
10
有new就要有delete,何时释放,那就要看实际应用时的需求
5
20