gpt4 book ai didi

c# - 坚持对象创建

转载 作者:太空宇宙 更新时间:2023-11-03 18:42:06 25 4
gpt4 key购买 nike

是否存在这样的情况:持有创建对象所需的数据并且仅在绝对必要时创建它比持有对象本身更好/更有效?

一个简单的例子:

class Bar
{
public string Data { get; set; }
}

class Foo
{
Bar bar;
readonly string barData;

public Foo(string barData)
{
this.barData = barData;
}

public void MaybeCreate(bool create)
{
if (create)
{
bar = new Bar { Data = barData };
}
}

public Bar Bar { get { return bar; } }
}

最佳答案

如果对象在构造上执行一些复杂的操作,比如分配系统资源,这是有意义的。

你有 Lazy<T> 帮助您延迟对象的实例化。除其他外,它还内置了线程安全功能,如果您需要的话。

关于c# - 坚持对象创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7771270/

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