C产品在市场上有哪些独特优势?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1602个文字,预计阅读时间需要7分钟。
今天看到devblogs已经更新了,新增了C篇内容。
今天看到已经更新了devblogs,新增的C# 11的!!(用于检查null的语法)经过非常长的讨论,最后取消了。然后我又想起来null检查,这个可以说一说。
函数参数null检查 传统写法写一个函数的时候,最经典的检查,估计也是大家最常使用的null检查,应该是这样的吧:
public static void GetV1(string prompt)
{
if (prompt is null) throw new ArgumentNullException(nameof(prompt));
Console.WriteLine(prompt);
}
ThrowIfNull
这个写起来也没啥问题,但是总觉得有点不舒适。.NET 6在ArgumentNullException中新增了ThrowIfNull方法,可以写的更优雅一点。
public static void GetV2(string prompt)
{
ArgumentNullException.ThrowIfNull(prompt);
Console.WriteLine(prompt);
}
异常的时候,就会出现:System.ArgumentNullException: 'Value cannot be null. (Parameter 'prompt')'。这个是不是简单了点?可是还是需要写一行。
本文共计1602个文字,预计阅读时间需要7分钟。
今天看到devblogs已经更新了,新增了C篇内容。
今天看到已经更新了devblogs,新增的C# 11的!!(用于检查null的语法)经过非常长的讨论,最后取消了。然后我又想起来null检查,这个可以说一说。
函数参数null检查 传统写法写一个函数的时候,最经典的检查,估计也是大家最常使用的null检查,应该是这样的吧:
public static void GetV1(string prompt)
{
if (prompt is null) throw new ArgumentNullException(nameof(prompt));
Console.WriteLine(prompt);
}
ThrowIfNull
这个写起来也没啥问题,但是总觉得有点不舒适。.NET 6在ArgumentNullException中新增了ThrowIfNull方法,可以写的更优雅一点。
public static void GetV2(string prompt)
{
ArgumentNullException.ThrowIfNull(prompt);
Console.WriteLine(prompt);
}
异常的时候,就会出现:System.ArgumentNullException: 'Value cannot be null. (Parameter 'prompt')'。这个是不是简单了点?可是还是需要写一行。

