gpt4 book ai didi

delphi - 如何确定泛型列表T List 是否已初始化

转载 作者:行者123 更新时间:2023-12-03 19:42:00 30 4
gpt4 key购买 nike

如我所知,当我们想检查对象是否已初始化时,我们可以使用isassigned,但是现在我发现它不适用于通用列表TList。 isassigned始终返回true,但这是错误的。那么解决方案是什么?

最佳答案

类型为TList<T>的对象引用变量与任何其他对象引用没有区别。与其他对象引用变量一样,将其与Assigned一起使用。

请注意,Assigned只能测试已初始化为nil的对象引用变量的初始化。

例如,在实例的构造函数开始执行之前,类实例成员被初始化为nil。通过调用New分配的对象引用被初始化为nil。或者将这些设置为默认值并分配给Default()

但是作为局部变量的对象引用变量未初始化为nil。实际上,它们根本没有初始化。同样,对于通过调用GetMem分配的对象引用变量。

最重要的是,类型为TList<T>或实际上是任何其他通用类的对象引用变量的处理与对任何其他TObject后代的处理相同。

关于delphi - 如何确定泛型列表T List <t>是否已初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17597352/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com