我有以下方法:尝试{}赶上(){} C++
class MyClass
{
public:
MyClass;
bool method (MyClass &obj);
};
void MyClass::method (MyClass &obj)
{
MyClass *c = new MyClass;
try{
//code
//access another method
return true;
}
catch (std::string s)
{
}
return false;
}
我应该在哪里return true
之前或return false
之前删除指针c
从MyClass:
对象?
这个问题没有任何意义。请澄清为什么你创建对象'C'。它的一生如何?你需要一个指针吗? –
另外,更正发布的代码,当前的代码没有意义:类范围中的'MyClass;'没有意义,在类定义之后缺少';',你的语义打算做不明确... –
可能重复[如何释放内存在try-catch块?](http://stackoverflow.com/questions/3048377/how-to-free-memory-in-try- catch-blocks) – razlebe