码迷,mamicode.com
首页 > 其他好文 > 详细

局部静态变量

时间:2014-11-28 22:43:53      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   color   sp   on   div   log   bs   

 1 #pragma region 成员函数的局部静态变量应用
 2 class CTestA
 3 {
 4 public:
 5     CTestA();
 6     void ReturnCurrentTime(float currentFrame, float nextFrame);
 7 };
 8 
 9 CTestA::CTestA(){}
10 
11 void CTestA::ReturnCurrentTime(float currentFrame, float nextFrame)
12 {
13     static float _currentFrame   = currentFrame;   //静态局部变量,任何对象调用这个方法时都是这个值
14     static float _nextFrame      = nextFrame;      //静态局部变量,任何对象调用这个方法时都是这个值
15     cout<<"_currentFrame="<<_currentFrame<<" _nextFrame="<<_nextFrame<<endl;
16     _nextFrame=2000;                               //修改静态变量的值,任何对象调用这个方法时都是这个值
17 }
18 
19 void test107()
20 {
21     CTestA a1;
22     CTestA a2;
23     float i=100.0f;
24     float j=200.0f;
25     a1.ReturnCurrentTime(i,j);                    //第一次初始化,输出是100,200
26     i      =1.0f;
27     j      =2.0f;
28     a2.ReturnCurrentTime(i,j);                    //第二次初始化输出的是100,2000,而非1和2,可见外部变量只能初始化一次局部静态变量
29 }
30 #pragma endregion

局部静态变量的应用,不明白时百思不得其解,明白后就豁然开朗,场景代码太多,这里仅仅直接抽象出部分代码来.

 

局部静态变量

标签:style   blog   io   color   sp   on   div   log   bs   

原文地址:http://www.cnblogs.com/QQ122252656/p/4129469.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!