![]() |
1
4
除了我在对问题的评论中提到的问题外,你应该避免像瘟疫这样的聪明把戏。第一个表单(在修复错误之后)更干净,更容易理解。第二种形式是OTOH,它给人的印象是任务是
|
![]() |
2
3
这种方法的一个缺点是
想象一下如果你有两个独立的
如果您更喜欢第二种形式,则可以实现非常类似的效果,但不必使用静态:
|
![]() |
3
2
“第二种方法”有一个更容易阅读的方法
使用这样的类,您可以创建许多“产卵者”,而不必费心保护您的全局状态:
|
![]() |
4
1
我建议使用第一个版本,因为它更易于测试。输入和输出清晰可见,您可以通过向其中输入有趣的时间值来很好地执行边界测试。如果您有引用全局和/或静态数据的代码,这是不可能的。 |
![]() |
5
1
如果您有一个提供线程的库,那么它还应该提供计时器。例如,WinAPI提供了每X秒调用一个给定函数的功能。这可能是最好的解决办法。 |
![]() |
6
0
但是,如果您的程序是一个模拟,其中当前时间对程序的所有部分都是至关重要的,那么我个人会选择不隐藏时间变量,并实现它
|
![]() |
AstralHex · 矩阵乘法代码工作不正常 3 月前 |
![]() |
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 3 月前 |
![]() |
Die4Toast · 递归调用成员箭头运算符-> 3 月前 |
![]() |
Anka Hanım · 关于结构和动态数组地址的问题 4 月前 |