下面是一个特别简单的例子,但我觉得挺有趣的,并且有助于对构造函数与析构函数的调用时机的了解。
---------------------------------------------------------------------------------------------------------------------------------
修改下面给出的程序,但不允许对main()函数作任何修改,使程序能够在屏幕上输出:
The most distant way in the world
is not the way from birth to the end
It is when I sit near you
that you don't understand I love you
原来的程序为:
int main() { cout<<"It is when I sit near you"<<endl; return 0; }
#include <iostream>
using namespace std;
class Poetry
{
public:
Poetry()
{
cout<<"The most distant way in the world\n";
cout<<"is not the way from birth to the end\n";
}
~Poetry()
{
cout<<"that you don't understand I love you.\n";
}
};
int main()
{
//定义一个对象
Poetry p;
cout<<"It is when I sit near you"<<endl;
return 0;
}
观察程序,可以通过输出感受(不解释啦~~)