gpt4 book ai didi

c# - Dictionary.Values - 它是否分配新的内存和时间复杂度

转载 作者:行者123 更新时间:2023-11-30 13:35:30 25 4
gpt4 key购买 nike

我是 C# 的新手,我想了解使用 Dictionary.Values 属性的内存和时间开销是多少。 Here我找不到关于算法时间复杂度规范或内存复杂度的任何信息?我是在看错地方还是在 C# 规范中未定义?

附言我来自 C++ bg。

最佳答案

is it undefined in C# spec?

它未在 C# 规范中定义,因为这不是 C# 功能 - 它是框架实现细节。

.Values在第一次被请求时延迟实例化一次;之后,分发现有值。所以是的,一些 内存可能会在首次使用时分配。但是,它不包含值的快照副本,因此:这不是昂贵的分配。它只包含对父字典实例的引用。

private Dictionary<TKey, TValue> dictionary;

实际上是 ValueCollection<TKey, TValue> 中唯一的字段.它本质上是一个外观,为相同的数据提供以值(value)为中心的 View 。

关于c# - Dictionary<TKey,TValue>.Values - 它是否分配新的内存和时间复杂度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52145423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com