路上遇尴尬结果遇到好心人# Working - 上班一族
P*y
1 楼
问在堆上分配内存的问题。问详细过程,小弟一问三不知。只知道用new operator.有个
问题是如果Constructor失败怎么办,会不会有内存泄漏什么的。后来才知道调用new在
堆上分配的时候,先调用operator new去拿到一块raw memory,然后在此内存上调用Con
structor,但问题是这个时候Constructor throw exception,然后就Fail了。。。。
问题就在这儿,由于前面用operator new分配了一块的raw memory,这时候有没有内存泄
漏???
回来以后自己找了个程序来调试,故意让它Constructor不成功。。。但是依然没有看出
那块事先分配的raw memory是怎样回收回去的。。。
各位有空的话帮我看看,我把我自己的源程序给贴上来。。。
#include "stdafx.h"
#include
using namespace std;
///// class Counted
template
class Counted {
public:
clas
问题是如果Constructor失败怎么办,会不会有内存泄漏什么的。后来才知道调用new在
堆上分配的时候,先调用operator new去拿到一块raw memory,然后在此内存上调用Con
structor,但问题是这个时候Constructor throw exception,然后就Fail了。。。。
问题就在这儿,由于前面用operator new分配了一块的raw memory,这时候有没有内存泄
漏???
回来以后自己找了个程序来调试,故意让它Constructor不成功。。。但是依然没有看出
那块事先分配的raw memory是怎样回收回去的。。。
各位有空的话帮我看看,我把我自己的源程序给贴上来。。。
#include "stdafx.h"
#include
using namespace std;
///// class Counted
template
class Counted {
public:
clas