????3??????????????????????????????????й????????????????????????????????????н????????????????????????????????????????????£?
class MyTest_Base
{
public:
MyTest_Base (string name = "") : m_name(name)
{
cout << "???????MyTest_Base?????????????????"<<m_name << endl;
}
virtual ~ MyTest_Base ()
{
cout << "???????MyTest_Base?????????????????"<<m_name << endl;
}
void Func() throw()
{
throw std::exception("???????????????????");
}
void Other() {}
protected:
string m_name;
};
class MyTest_Parts
{
public:
MyTest_Parts ()
{
cout << "???????MyTest_Parts????????" << endl;
}
virtual ~ MyTest_Parts ()
{
cout << "???????MyTest_Parts????????"<< endl;
}
};
class MyTest_Derive : public MyTest_Base
{
public:
MyTest_Derive (string name = "") : m_component()?? MyTest_Base(name)
{
throw std::exception("??MyTest_Derive????????????????????????");
cout << "???????MyTest_Derive?????????????????"<<m_name << endl;
}
virtual ~ MyTest_Derive ()
{
cout << "???????MyTest_Derive?????????????????"<<m_name << endl;
}
protected:
MyTest_Parts m_component;
};
void main()
{
try
{
// ????????????????
MyTest_Derive obj1("obj1");
obj1.Func();
obj1.Other();
}
catch(std::exception e)
{
cout << e.what() << endl;
}
catch(...)
{
cout << "unknow exception"<< endl;
}
}
???????????е??????
???????????MyTest_Base?????????????????obj1
???????????MyTest_Parts????????
???????????MyTest_Parts????????
???????????MyTest_Base?????????????????obj1
??????MyTest_Derive????????????????????????
????????????????У?MyTest_Derive??MyTest_Base??У???MyTest_Derive???????MyTest_Parts?????????????????MyTest_Derive???????????????MyTest_Base?????????MyTest_Parts???????????m_component????????????????????????????????????????????????????????????????????????????????л???????????????????????????????Щ???е???????漲?????????????????Щ?????е??κ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
?????????н??????ó?????????
??????1?? ????????????????????????????????????????????????????????????????
??????2?? ?????????????????????????????????????????????????????????????????????????п???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????е??
???????????????????????????
??????1?? C++?????????????????????????????????????
??????2?? ?????????????????????????????????????У?
??????3?? ????????????????????????????????????????????????
??????4?? ????^-^???????????仰?? “C++???????????????κ?????????????????”????????????????ν?????????????μ?????????