static 以及变量声明和定义
#include <iostream>
#include<string>
#include<cstring>
using namespace std;
size_t count_calls()
{
static size_t ctr;//只声明未定义 执行默认初值
ctr=0; //赋值
return ++ctr;
}
int main()
{
for(size_t i=0;i!=10;++i)
cout<<count_calls()<<endl;
return 0;
}
结果:
#include <iostream>
#include<string>
#include<cstring>
using namespace std;
size_t count_calls()
{
static size_t ctr=0;//声明并定义
return ++ctr;
}
int main()
{
for(size_t i=0;i!=10;++i)
cout<<count_calls()<<endl;
return 0;
}