r*r
2 楼
I feel that I need to delete everytime after I use "new" to create a pointer.
What if I want to put the new inside a loop?For example
myobj * np;
for (int i =1;i ...
np = new myobj();
}
delete np;
will this work?Or do I have to delete np inside the loop?
What if I want to put the new inside a loop?For example
myobj * np;
for (int i =1;i
np = new myobj();
}
delete np;
will this work?Or do I have to delete np inside the loop?
R*r
3 楼
Your program will have memory leak, delete it inside loop.
.
【在 r*****r 的大作中提到】
: I feel that I need to delete everytime after I use "new" to create a pointer.
: What if I want to put the new inside a loop?For example
: myobj * np;
: for (int i =1;i : ...
: np = new myobj();
: }
: delete np;
: will this work?Or do I have to delete np inside the loop?
.
【在 r*****r 的大作中提到】
: I feel that I need to delete everytime after I use "new" to create a pointer.
: What if I want to put the new inside a loop?For example
: myobj * np;
: for (int i =1;i
: np = new myobj();
: }
: delete np;
: will this work?Or do I have to delete np inside the loop?
m*n
5 楼
It won't work. Even if you define np outside the loop.
You have to do:
myobj * np;
for (int i = 1; i < nloop; ++i)
{
...
np = new myobj();
...
delete np;
}
or you could you smart pointer:
#include
for (int i = 1; i < nloop; ++i)
{
...
std::auto_ptr np(new myboj());
(use np just like plain poiters)
}
.
【在 r*****r 的大作中提到】
: I feel that I need to delete everytime after I use "new" to create a pointer.
: What if I want to put the new inside a loop?For example
: myobj * np;
: for (int i =1;i : ...
: np = new myobj();
: }
: delete np;
: will this work?Or do I have to delete np inside the loop?
You have to do:
myobj * np;
for (int i = 1; i < nloop; ++i)
{
...
np = new myobj();
...
delete np;
}
or you could you smart pointer:
#include
for (int i = 1; i < nloop; ++i)
{
...
std::auto_ptr
(use np just like plain poiters)
}
.
【在 r*****r 的大作中提到】
: I feel that I need to delete everytime after I use "new" to create a pointer.
: What if I want to put the new inside a loop?For example
: myobj * np;
: for (int i =1;i
: np = new myobj();
: }
: delete np;
: will this work?Or do I have to delete np inside the loop?
相关阅读
回了趟中国八阕挂了Javascript 里的prototype跟以前 MFC 一堆base class性质上有啥区别?该怎么推导下面算法时间复杂度O(N!*N)的*N?现在机器学习的都用什么语言了数据库里的B+树为啥要用个指针把最底层的相邻叶节点连起来?你们写JAVA用月食还是intelliJ? (转载)C++ code里面的getter 是不好的设计吗?请大家批判一下 What is Functional Programming?OS Kernel和外围哪个有前途?【bssd】又出人生导师了我买了本effective javaprice prediction 有意义上DL or NN吗?无意中发现个小巨牛啊一样的数据一样的参数 win和linux下训练结果差别弱鸡疑问:现在的深度学习是不是都是静态模型这个trainNetwork挺坑嗲的还有王法吗?人民日报欢迎Google回归, 百度: 我们有信心再赢一次!Re: 王垠去了intel (转载)