首页 > 代码库 > 局部静态变量
局部静态变量
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,20026 i =1.0f;27 j =2.0f;28 a2.ReturnCurrentTime(i,j); //第二次初始化输出的是100,2000,而非1和2,可见外部变量只能初始化一次局部静态变量29 }30 #pragma endregion
局部静态变量的应用,不明白时百思不得其解,明白后就豁然开朗,场景代码太多,这里仅仅直接抽象出部分代码来.
局部静态变量
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。