我想知道是否可以将模板作为Map的键。例如:
实质上,我想做的是能够拥有一堆节点,这些节点包含任意类型的数据,并且以该数据作为键。我认为我可以通过将所述数据转换为二进制并以此作为键来实现,但这样很混乱,我想避免这种情况。
为了澄清,我想能够使用任何类型的变量作为键。例如,如果我有两个节点,一个包含 int 作为其数据,另一个包含 Foo 作为其数据,我想能够使用它们的数据将它们放入同一个映射中。也许映射不是我想要的,我不确定...
你有什么想法吗? 谢谢!
std::map< <T> , Node> nodes;
实质上,我想做的是能够拥有一堆节点,这些节点包含任意类型的数据,并且以该数据作为键。我认为我可以通过将所述数据转换为二进制并以此作为键来实现,但这样很混乱,我想避免这种情况。
为了澄清,我想能够使用任何类型的变量作为键。例如,如果我有两个节点,一个包含 int 作为其数据,另一个包含 Foo 作为其数据,我想能够使用它们的数据将它们放入同一个映射中。也许映射不是我想要的,我不确定...
你有什么想法吗? 谢谢!
std::map
,或者std::unordered_map
是否足够,这将避免为不同类型定义小于比较。 - SirGuy