【发布时间】:2011-06-01 23:54:39
【问题描述】:
当你有以下代码时会发生什么:
void makeItHappen()
{
char* text = "Hello, world";
}
text 是否超出范围并被自动删除,还是留在内存中?
那么下面的例子呢:
class SomeClass
{
public:
SomeClass();
~SomeClass();
};
SomeClass::SomeClass() { }
SomeClass::~SomeClass()
{
std::cout << "Destroyed?" << std::endl;
}
int main()
{
SomeClass* someClass = new SomeClass();
return 0;
} // What happend to someClass?
这里会发生同样的事情吗?
谢谢!
【问题讨论】: