【转】浅析auto_ptr(8)
时间:2025-07-14
时间:2025-07-14
智能指针,auto_prt的基本用法,及其示例
private:
string __errormsg;
};
//
// 一个简单的自定义类型Cat
//
class Cat
{
public:
//构造
Cat (const string &name, int age)
{
if (name.empty())
{
throw CatException("Exception:猫咪姓名不能为空!");
}
if (age<=0)
{
throw CatException("Exception:猫咪年龄只能为正!");
}
__age = age;
__name = new char[name.length()+1];
strcpy(__name, name.c_str());
#ifdef NEEDDEBUG
cout << "DEBUG:猫咪已被成功创建(年龄:" << __age << ",名字:" << __name << ")" << endl;
#endif
}
Cat (const char *name, int age)
{
if (strlen(name)==0)
{
throw CatException("Exception:猫咪姓名不能为空!");
}
if (age<=0)
{
throw CatException("Exception:猫咪年龄只能为正!");
}
上一篇:预分解窑操作的体会(二)