什么是C#中C++向量的良好替代品?

Hol*_*716 15 .net c# c++

我正在努力提高我的其他语言技能,使用c ++作为我的主要编程语言.我目前的项目是锤击C#.net,因为我听说这对于熟悉c ++和VB.net的人而言是一种很好的中间语言.

通常在使用c ++中未知数量的元素时,我会将变量声明为向量,然后从那里开始.向量似乎不存在于c#中,而在我当前的程序中,我一直在使用arraylists,但我开始怀疑使用arraylists是否是一个好习惯,因为我在某处看到它是来自.net 1.0的遗留物

长问题简介 - c#最常用的列表类型是什么?

mlo*_*kot 28

如果您以.NET 2.0之前的版本为目标,请使用 ArrayList

如果您的目标是.NET 2.0+,那么使用泛型类型 List<T>

您可能需要查找其他C++标准容器的替换,因此可以将C++映射到.NET 2.0+类似的类型或等价物:

std::vector - List<T>
std::list - LinkedList<T>
std::map - Dictionary<K, V>
std::set - HashSet<T>
std::multimap - Dictionary<K, List<V>>
Run Code Online (Sandbox Code Playgroud)

  • 我认为`std :: set`会更接近于'HashSet <T>`. (3认同)