在C#中是否有std::set的等价物?

在C#中是否有std::set的等价物?,c#,C#,我想要一个集装箱 StdStyleSet<A> StdStyleSet 的 class A:i可比较{…} 它满足std::set的属性。这尤其是: 元素本身就是关键 插入时自动排序 SortedSet:请参阅-尽管从技术上讲,它在.NET Framework中 对于早期版本,您可以使用哈希集并使用LINQ进行排序,如果您主要是以有序方式使用该集,这并不理想。或者,您可以使用值为Object的SortedDictionary,并将元素存储在值为空的键中。在.NET 4中。。花

我想要一个集装箱

StdStyleSet<A>
StdStyleSet

class A:i可比较{…}
它满足std::set的属性。这尤其是:

  • 元素本身就是关键
  • 插入时自动排序
SortedSet
:请参阅-尽管从技术上讲,它在.NET Framework中


对于早期版本,您可以使用哈希集并使用LINQ进行排序,如果您主要是以有序方式使用该集,这并不理想。或者,您可以使用值为
Object
SortedDictionary
,并将元素存储在值为空的键中。

在.NET 4中。。花了他们足够长的时间,很好!因此,对于早期版本没有解决方案?@Danvil-您可以使用哈希集并使用LINQ处理任何排序,或者使用SortedDictionary并为值存储空值,即,仅使用键。@Danvil,是的,有,从Mono获取它:对于早期版本,您可以将
字典
/
SortedDictionary
与一些伪值类型一起使用,以便只使用键。但是,是的,.NET在获得对甚至是基本数据结构的支持方面都慢得可笑。
class A : IComparable<A> { ... }