万金流
以码会友。 吾Q:578751655。 水平有限,轻喷,谢!
随笔 - 189,  文章 - 0,  评论 - 7,  阅读 - 14万

record是一种语法糖。

标准的record用法有“record class”和"record struct"两种,分别表示记录类和记录构造。是“引用”和“值”的差别。

单独使用record表示"record class"。

语法:脱胎于构造函数。

 record Person(string Xm,int Nl); 

或者

record Person(string Xm,int Nl)
{
    public void showMe()
    {
        Console.WriteLine($"I'm {Xm}, I'm {Nl} years old.");
    }
}

含义:

1、快速写出类Person。

2、参数(微软称为位置参数)Xm和Nl会自动生成为属性。

3、自动生成解构函数。

上面的Person,基本用法如下:

static void Main(string[] args)
{
    Person a=new("zs",20);
    a.showMe();
    var (aa, bb) = a;
    Console.WriteLine($"{aa}\n{bb}");
}

结果略。

注意:

  1. 记录除了语法糖的性质,还是为性能优化和安全设计的。
  2. 其中一个表现为属性只读,构造后不可修改。
  3. 应该只用它来存放数据。
  4. 尽量不要带方法,不要继承。
posted on   万金流  阅读(294)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2020-05-05 Json和类之间的转化

点击右上角即可分享
微信分享提示