我经常有定期调用的方法,并且在调用之间必须保留一些"状态",如:
float lastTime = 0.0f;
void Draw( float currentTime )
{
if( currentTime - lastTime > 0.5f )
{
// not enough FPS
}
lastTime = currentTime;
}
Run Code Online (Sandbox Code Playgroud)
并且它让我感到疯狂,全局"状态"字段(此处为"lastTime")在整个班级中都是可见的,而在这一方法中只需要它.有没有办法将此全局字段的可见范围限制为仅限于方法或将其设置为本地,但是在调用之间保持它的值?同样的问题适用于属性使用的字段(具有一些逻辑且不能自动).
提前感谢任何建议......
在类的一部分中使其成为私有的唯一方法是使其成为一个单独的对象,在类中内部管理此属性.
但是,我建议重新考虑一下.私有它的想法是让一个成员对类本身保密 - 如果你担心你的班级看到自己的数据,那么是时候重构成更小的类,每个类都有自己的功能.
这有一个阶级变得太大的"气味".
| 归档时间: |
|
| 查看次数: |
1127 次 |
| 最近记录: |