我需要在 TStringList
中存储一个变体值,到目前为止我尝试过这个
var
list : TStringList;
v : OleVariant;
List..AddObject('Item1',v);
或者
List..AddObject('Item1',TObject(v));
但在这两种情况下,代码都无法编译,因为类型转换无效或类型不兼容。
所以问题是,我如何在 TStringlist 中存储变体值?
最佳答案
我认为唯一的方法是将您的变体包装在一个类中,并将对该变体的引用放入 stringlist 项目的对象中。您当然需要注意在释放字符串列表时正确释放包装器实例。使用最近的 Delphi 版本,这可以通过使用 stringlist 的“OwnsObjects”参数轻松完成。
关于delphi - 在 TStringList 的对象属性中存储变量值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4412747/