#include "iostream.h"
class Sample
{
public:
/* 构造函数 */
Sample()
{
cout<<"Constructor"<<endl;
}
/* 析构函数 */
~Sample()
{
cout<<"Destructor"<<endl;
}
};
void fn(int i)
{
//子函数fn中 定义静态 类对象 c.
static Sample c;
//直接输出 从实参传入的 (值传递 i的值).
cout<<"i="<<i<<endl;
}
void main()
{
fn(10);
fn(20);
}
/*
打印结果:
Constructor
i=10
i=20
Destructor
此程序精华之处在于:
子函数中构造静态类对象,让程序员了解到,静态类对象属于子函数时的生存方式周期以及
身为子函数中的静态对象,析构与构造时的区别!
当程序结束时,静态对象的析构函数才被调用!
*/