0
点赞
收藏
分享

微信扫一扫

C#学习笔记

i奇异 2022-02-25 阅读 78

C#学习笔记

三元运算符为条件右联运算符:

a?b:c?d:e 

计算结果:

a?b:(c?d:e)

ref 关键字:返回对结果的引用:

t,m为数组:

ref int v = (i < 5)? ref t[2]: ref m[2] ;

v = 5; //修改原数组中的值.

??如果左值为空,则返回右值,

??=如果左值为空,则右值赋给左值.同时返回左值.

?? ??=为右联运算符. 

List<int> numbers = null;
int? a = null;

(numbers ??= new List<int>()).Add(5);
Console.WriteLine(string.Join(" ", numbers));  // output: 5

numbers.Add(a ??= 0);
Console.WriteLine(string.Join(" ", numbers));  // output: 5 0
Console.WriteLine(a);  // output: 0

可以将throw 放在??中用于无值时触发异常. 

public string Name { get => name; set => name = value ?? throw new ArgumentNullException(nameof(value), "Name cannot be null"); }

命名空间别名限定符 ::

using forwinforms = System.Drawing;
using forwpf = System.Windows;

public class Converters
{
    public static forwpf::Point Convert(forwinforms::Point point) => new forwpf::Point(point.X, point.Y);
}

举报

相关推荐

0 条评论