gpt4 book ai didi

c# - 这是 Visual Studio 2010 编译器中的错误吗?

转载 作者:太空狗 更新时间:2023-10-29 22:06:35 26 4
gpt4 key购买 nike

DateTime? date = null;
string tmp = "a" + "(" + date ?? "blablabla" + ")";

Console.WriteLine(tmp);

这将打印出接近于:'a ('.

这是 null-coalescing operator 的错误吗?如果我输入 date ?? "blablabla" 在括号中,下划线表示错误。

最佳答案

Null-coalescing operator ?? 的优先级低于 + 运算符,因此您的代码等于

string tmp = ("a" + "(" + date) ?? ("blablabla" + ")");

由于 + 操作中的所有字符串都会产生一个字符串(通过对所有非字符串操作数调用 .ToString()),您的代码将始终产生"a(" 字符串。

关于c# - 这是 Visual Studio 2010 编译器中的错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17548660/

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