![]() |
1
12
如果您有其他类可以访问的列表的共享引用,那么clear是更好的选择。在这种情况下,将其更新将创建一个新的空列表,但任何其他已创建对旧列表引用的类仍将看到一个已填充的列表。 想象一下这个场景:
在上述情况下,如果
所以我想你的问题的答案是:
|
![]() |
2
1
如果对这个列表的引用需要这种类型的代码,那么我认为需要重新设计一些东西。尝试使用无副作用的函数,这不是因为它既在构造对象,也在操纵状态,这可能会在其他地方产生结果。 |
![]() |
3
0
我个人喜欢
列表只在一个地方和一个地方创建;clear()是明确的、直接的、简单的和无条件的。更少的代码,更少的复杂性。
我在用
更新的 由于Joel Mueller的有益评论,使用正确的C语法。 |
![]() |
4
0
还需要考虑垃圾收集-如果您经常使用new(),那么这将在堆上创建许多必须进行垃圾收集的对象,但clear()不会创建任何新的堆对象(尽管这只是一个问题,如果您这样做了数千次) |
![]() |
A B · C#Excel自动调整列避免长文本时出错 5 月前 |
![]() |
pseudodev · 失败的测试仅显示堆栈跟踪,不显示完整日志 5 月前 |
![]() |
CactusCake · if语句中应有分号 6 月前 |
![]() |
Bin4ry · 子文件夹中的应用程序设置 7 月前 |