Nim 哈希表将字符串映射到任何类型
Nim hashtable mapping strings to any type
如何在 Nim 中实例化一个将字符串映射到任何类型(包括基本数据类型)对象的哈希表? None 这些似乎有效:
import tables
var t = newTable[string, any]()
var t = newTable[string, ref]()
var t = newTable[string, auto]()
var t = newTable[string, object]()
你不知道。不像 Java 这样的语言,其中所有内容都派生自 Object
并且您可以将其用作基本类型,Nim 没有任何内容都派生自的单一类型。大多数面向对象类型都使用 RootObj
作为基础。但是,这不适用于基本数据类型。
您可以使用 object variants 来创建一个类型,该类型可以容纳多个不同类型的值之一。通常,习惯于使用映射到 任何类型 的脚本语言的人会出现这个问题,但实际上很少需要这样做。所以很可能,有另一种解决方案可以解决你想做的事情而不需要这样的哈希表。
如何在 Nim 中实例化一个将字符串映射到任何类型(包括基本数据类型)对象的哈希表? None 这些似乎有效:
import tables
var t = newTable[string, any]()
var t = newTable[string, ref]()
var t = newTable[string, auto]()
var t = newTable[string, object]()
你不知道。不像 Java 这样的语言,其中所有内容都派生自 Object
并且您可以将其用作基本类型,Nim 没有任何内容都派生自的单一类型。大多数面向对象类型都使用 RootObj
作为基础。但是,这不适用于基本数据类型。
您可以使用 object variants 来创建一个类型,该类型可以容纳多个不同类型的值之一。通常,习惯于使用映射到 任何类型 的脚本语言的人会出现这个问题,但实际上很少需要这样做。所以很可能,有另一种解决方案可以解决你想做的事情而不需要这样的哈希表。