gpt4 book ai didi

C# "Constant Objects"用作默认参数

转载 作者:IT王子 更新时间:2023-10-29 04:42:42 24 4
gpt4 key购买 nike

有没有办法创建常量对象(即不能编辑,编译时创建)?

我只是在玩 C# 语言,注意到可选参数功能,并认为能够使用默认对象作为可选参数可能很巧妙。请考虑以下事项:

//this class has default settings
private const SettingsClass DefaultSettings = new SettingsClass ();

public void doSomething(SettingsClass settings = DefaultSettings)
{

}

这显然不能编译,但它是我想做的事情的一个例子。是否可以像这样创建一个常量对象并将其用作可选参数的默认值??

最佳答案

不,可选参数的默认值必须是编译时常量。

在您的情况下,解决方法是:

public void doSomething(SettingsClass settings = null)
{
settings = settings ?? DefaultSettings;
...
}

关于C# "Constant Objects"用作默认参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5372600/

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