Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
C#中 C++ 的类似类是什么std::vector?
std::vector
我想要一个类,它在内部保留一个内部数组并支持在后面插入O(1)。
O(1)
这是一个列表,其中一些C++/C#容器彼此大致等效(不是完全替换):
C++
C#
std::vector->List<T>
List<T>
std::list->LinkedList<T>
std::list
LinkedList<T>
std::map->SortedDictionary<Tkey, Tvalue>
std::map
SortedDictionary<Tkey, Tvalue>
std::set->SortedSet<T>
std::set
SortedSet<T>
std::unordered_set->HashSet<T>
std::unordered_set
HashSet<T>
std::multiset-> SortedDictionary<Tkey, int>(int保持s的数量Tkey)
std::multiset
SortedDictionary<Tkey, int>
int
Tkey
std::unordered_map->Dictionary<TKey, TValue>
std::unordered_map
Dictionary<TKey, TValue>
std::list 由数组支持,每次删除都会产生内存复制,与 C# List 的行为相同。而 C# LinkedList 由节点列表支持,与 std::vector 相同。
所以我相信下面是正确的。