【发布时间】:2017-12-31 19:07:42
【问题描述】:
我想在 Delphi 中对两个值使用一个键,就像这样
TDictionary<tkey, tfirstvalue,tsecondvalue>;
【问题讨论】:
-
是什么阻止您使用元组作为键?
-
在 c# netfram 4 中使用,但我想在 delphi 中使用
-
使用 dynarray 作为键的值怎么样?还是有两个值的记录?然后它变成了类似于
TDictionary<TKey, TRecordContainingFirstAndSecondValue>的东西,这应该是可行的。或使用TPair<TFirstValue, TSecondValue>作为值类型(无论如何都相当于 2 类型记录)。 -
@DavidStockinger:Delphi 没有内置元组。可以使用其他可用的数据类型轻松模拟它们,但它们不作为内置类型存在。
-
换句话说,这些值可以很容易地以多种方式组合为一种类型(包含多个值)。 TValue 部分可以任意大,因此可以有 1:1 和 1:many 关系。如果你想拥有不同的键类型,或者每个值有多个键(many:many),或者类似的,它只会变得毛茸茸,因为 TDictionary 不是为此而设计的。
标签: delphi key tdictionary