+ -
当前位置:首页 → 问答吧 → 怎么就一个结果呢?

怎么就一个结果呢?

时间:2011-12-02

来源:互联网

#include<iostream.h>
class S 
{
int x;
public :
S (int a)
{
x=a;
cout<<" constructing object:x="<<x<<endl;
}
};

void func(int n)
{
static S obj(n);
}

void main()
{

func(10);
  func(1);


作者: tdljuntuan   发布时间: 2011-12-02

static定义的静态变量。
无论用多少次都只申请一次内存。
也只构造一次。

作者: cobra_chen   发布时间: 2011-12-02

S是static变量,它的初始化只会被执行一次。
把static去掉,那么每次调用都会初始化S,也都会执行到构造函数,也就都能打印出来了。

作者: wshjldaxiong   发布时间: 2011-12-02

已经差不多了吧 静态变量的使用

作者: hnuqinhuan   发布时间: 2011-12-02