gpt4 book ai didi

C# 4.0 - 如何处理可选的字符串参数

转载 作者:可可西里 更新时间:2023-11-01 03:08:47 26 4
gpt4 key购买 nike

此代码无效:

private void Foo(string optionalString = string.Empty)
{
// do foo.
}

但是这段代码是:

private void Foo(string optionalString = "")
{
// do foo.
}

为什么?因为 string.Empty 是只读字段,不是常量,可选参数的默认值必须是编译时常量。

所以,关于我的问题......(好吧,关注)

这是我必须做的:

private const string emptyString = "";

private void Foo(string optionalString = emptyString)
{
// do foo.
if (!string.IsNullOrEmpty(optionalString))
// etc
}

你们如何处理可选的字符串参数?

为什么他们做不到String.Empty编译时常量?

最佳答案

嗯... string optionalParm = ""又出了什么问题?为什么那么糟糕?在这种情况下,你真的认为你需要一个空字符串的符号常量吗?那这个怎么样?

const int Zero = 0;

void SomeMethod(int optional = Zero) { }

你觉得这很傻吗?

关于C# 4.0 - 如何处理可选的字符串参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3606301/

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