当前位置: 首页 > news >正文

济南学习网站制作网站微信分享链接怎么做的

济南学习网站制作,网站微信分享链接怎么做的,自己如何制作一个软件,html语言的特点nint 最近看C# 9.0时,发现一个有意思的关键词,就是nint,第一次看到这个,于是好奇心爆棚,就去实际操作了一下。 nint i 1000; Console.WriteLine("i{0}", i);实际结果与int的结果是一样的,那为什…

nint
最近看C# 9.0时,发现一个有意思的关键词,就是nint,第一次看到这个,于是好奇心爆棚,就去实际操作了一下。

nint i = 1000;
Console.WriteLine("i={0}", i);

在这里插入图片描述

实际结果与int的结果是一样的,那为什么还要出一个nint关键字?这个关键字的用途到底在哪里?带着问题继续去探索。
对源代码进行了查看,发现nint是IntPtr的结构体,如果你做过C#与C++之间的交互,我相信你对IntPtr是非常的熟悉,IntPtr是一个指针类型,现在直接提供关键词nint进行支持,让你能够在类型安全的前提下使用指针。

IntPtr i = (IntPtr)1000;
Console.WriteLine("i={0}", i);

这样我就可以对我之前做的关于在C#中进行内存对齐的代码用nint进行简化了,代码如下所示:

public unsafe struct RTCPointQuery8{public fixed float x[8];public fixed float y[8];public fixed float z[8];public fixed float time[8];public fixed float radius[8];}
Span<byte> stack = stackalloc byte[sizeof(RTCPointQuery8) + 32];
ref var test = ref StackAllocAligned<RTCPointQuery8>(stack, 32);static unsafe ref T StackAllocAligned<T>(Span<byte> stack, nuint alignment) where T : unmanaged{return ref Unsafe.AsRef<T>((void*)(((nint)Unsafe.AsPointer(ref MemoryMarshal.GetReference(stack))+ ((nint)alignment - 1)) & ~(nint)(alignment - 1)));}

Pattern matching improvements(模式匹配)

模式匹配是解决if-else嵌套的情形,例如:现在各个地方都在发放消费券,消费券的规则如下:
性别 年龄 地区 面值
男 <20 江苏 1800
男 <45 上海 3000
男 剩余 剩余 2000
女 <20 浙江 1800
女 <60 浙江 2500
如果使用传统的方式实现这个过程,你首先想到的是if-else,如下所示:

public static decimal get_ticket(string sex, int age, string district){if(sex == "男"){if(age < 20 && district == "江苏"){return 1800;}else{if(age < 45 && district == "上海"){return 3000;}else{return 2000;}}}else{if(age < 20 && district == "浙江"){return 1800;}else if(age < 60 && district == "浙江"){return 2500;}}return 0;}

这样写倒也是可以的,就是看着不太舒服,if-else太多了,看得眼花缭乱;接下来我们使用模式匹配,看看代码会是什么样子,如下所示:

public static decimal get_ticket_pattern(string sex, int age, string distinct){return (sex, age, distinct) switch{("男", < 20, "江苏") => 1800,("男", < 45, "上海") => 3000,("男", _, _) => 2000,("女", < 20, "浙江") => 1800,("女", < 60, "浙江") => 2500,_ => 0};}

这种简化后的代码看着让人舒服多了,这就是Pattern matching要帮助你解决的场景。
两者运行的效果是一样的,如下所示:
在这里插入图片描述

但是Pattern matching在转化成底层代码之后,也是if-else的模式;玩法有千万种,绝对让你瞠目结舌,就看你能不能玩出新的花样来。当然,这个特性最重要的是你要明白它的客户群体在哪里?

http://www.yayakq.cn/news/689067/

相关文章:

  • 合肥html5网站建设百度推广技巧方法
  • 能不能模仿百度一样做搜索引擎网站wordpress如何调用标签
  • 设计一个网站要多少钱网页设计实训报告5000字
  • 收费网站素材如何建个人摄影网站
  • 网站开发经理招聘做酒业网站的要求
  • 网站定制兴田德润实力强济南网站建设免费
  • 做网页网站 的公司苗木公司网站模板
  • 微信微网站建设平台吉安建站公司
  • 手机网站跳转网站建设容易学吗
  • 南阳网站推广公司如何制作一个小程序
  • 怎么免费建立自己的网站网站时间轴
  • 关于戒烟网站怎么做注册深圳公司费用
  • 旅游平台网站建设方案网页设计的实训报告
  • 怀来住房和城乡建设局网站电商网站如何生成app
  • 什么叫网站域名如何与老板谈网站建设
  • 投资网站嘉定南翔网站建设
  • 企业网站建设和管理搜索引擎优化师
  • 软件外包公司排名余姚关键词优化公司
  • 阿里云域名备案网站建设方案广州做网站企业
  • 建立网站的流程怎么制作网站二维码
  • 免费的视频模板网站专业软件网站建设
  • 东莞网页如何制作360优化大师最新版
  • 长春网站建设技术外包平台运营的主要工作内容
  • 建设网站参数秦皇岛市住房公积金管理中心
  • 微信网站公司wordpress 媒体库地址
  • 湖北省建设厅质监站网站防疫管控优化措施
  • 网站建设做网站需要多少钱?wordpress 修改404
  • 电商网站建设精英网站建设服务器是什么
  • 免费素材网站视频关键词排名优化怎么做
  • 建设银行网站怎么修改手机号码吗注册网站名字