问题标签 [tlist]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 使用尖括号(我见过有人使用 TList)
我看到人们声明他们的 TLists
之后,当他们创建它时,他们会
所以我假设通过这样做,他们不必在使用 MyList.Items[I] 时对它进行类型转换,例如:
所以相反,他们会做
那是对的吗?
如果是这样,那为什么我不能让它在 Delphi 2010 中工作呢?我正在尝试 - 将我的列表声明为
MyList : TList<PSomeType>;
但是编译器说:
未声明的标识符:TList<>
我在那里做错了什么?
delphi - Delphi TList 的记录
我需要存储一个临时的记录列表,并且认为这TList
将是一个好方法吗?但是,我不确定如何使用 a 来执行此操作,TList
并且想知道这是否是最好的,以及是否有人有任何示例说明如何执行此操作?
delphi - Delphi 2010:混淆泛型类型 TList 场景?通过值或引用传递?
几天前,我在项目中间使用 Generic TList 时遇到了一个问题。我在一个简单的测试项目中对其进行了测试,并遇到了同样的问题。这是确切的代码:
Label1.Caption 将是100而不是10!为什么会这样?我认为TList.Add(const value)
是按值传递而不是按引用传递!
delphi - 如何将记录类型的记录添加到 TList<>?
我有一个数据树列表。我正在遍历树列表以匹配某些记录并将它们添加到通用 TList<>。除了所有记录值都成为为 TList 中的所有项目添加的最后一个之外,此方法有效。
这是一些代码:
像这样添加记录:
...或添加这样的记录:
结果完全相同。AList.Items[0...Count-1] 都具有相同的值。单步执行代码,我可以看到正在捕获正确的数据,但是一旦我将新记录保存到 AList,所有以前的记录都会采用相同的值。这表明 TList 中的每个项目都是指向内存中同一记录的指针。如果记录所占用的内存发生变化,所有项目都会发生变化。这使自那以后,但不是我想要的。如何分配 TList 中的新记录以保存不同的数据?
我知道我可以通过其他方式完成最终结果,而且我确实做到了。现在使用泛型和记录,这对我来说更具教育意义。我正在使用德尔福 XE。
谢谢
delphi - tcxGrid 使用 TList 作为数据源
我想知道是否可以将 TList 对象绑定为 cxGrid 数据源。
所以我拥有的是一个 TList 对象,其中包含我不需要持久的各种对象。我想要一种 GridView 作为“所选项目”的概述,并且所选项目是列表中的对象。
最好由存储在 TList 中的对象类型定义列。
这是否容易实现,如果可以,您能否给我一个关于如何完成的概述。我目前正在使用一个 ListBox,它使用 tabWidth 作为一种列分隔符,但更愿意进行切换。
delphi - 如何搜索通用 TList收藏?
我有一个集合
TActivityCategory 有一个字符串类型的 Name 属性,我想使用 Name 属性搜索 TList。
我在 TList<> 中看到 BinarySearch,但这需要 TActivityCategory 的实例。我只想传递一个名称的字符串。
我该怎么做呢?
vim - 在 Vim 中打开 NERDTree 和 Tlist
我正在寻找一种方法来(自动)在左侧直接打开 NERDTree 和 Tlist,以便每个插件占据屏幕高度的一半。我已经找到了这个问题,穆罕默德的答案正是我正在寻找的。但是,我想知道是否有更直接的方法可以做到这一点。
delphi - 从Delphi中的TList开头删除大块项目的有效方法是什么
从 TList 中删除 (0) 代价高昂,因为所有后续项都需要向下移动。如果我需要从更大列表的开头删除大量项目,最快的方法是什么?
delphi - Delphi XE2 TPointerList 用法
我在尝试编译 XE2 中的某些组件时遇到以下问题。这些组件不是为 XE2 准备的,但无论如何我都在尝试编译它们。
在一个组件中,它被声明为
使用时,例如
它产生“需要指针类型”编译错误。
我可以像这样纠正它
但是天知道我需要多少时间来修复所有错误。
是否有一些编译器指令或设置可以处理这个问题。我试过 {$X} 和 {$T} 没有效果。
在 XE2 Delphi TPointerList (TList.List 属性)被声明为动态数组
如果有人可以帮忙?
delphi - Delphi:除 Integer 以外的类型用于索引 TStringList 项
Arrays
可以使用用户定义的枚举类型进行索引。例如:
然后可以使用TIndexValue
值作为索引来引用此数组中的元素:
我正在尝试使用TStringList
.
一个简单的解决方案是在引用时将每个索引值转换为一个Integer
类型:
另一个解决方案(隐藏所有转换)是创建一个子类TStringList
并将所有转换推迟到该子类的访问继承Strings
属性的子例程:
这适用于使用枚举类型的单个实现TIndexValue
。
但是,我想TStringList
为由不同枚举类型索引的几个不同对象重新使用相同的逻辑或子类,而不必TStringList
为每个可能的枚举类型定义子类。
这样的事情可能吗?我怀疑我可能不得不依赖 Delphi 的泛型,但我很想知道有更简单的方法可以实现这一点。