长沙品牌网站建设实力强去哪个网站可以接单做ps等等

diannao/2026/1/25 9:09:24/文章来源:
长沙品牌网站建设实力强,去哪个网站可以接单做ps等等,宁波网站营销推广策划方案,深圳手机端网站建设模板C# 9 新特性 —— 补充篇Intro前面我们分别介绍了一些 C# 9 中的新特性#xff0c;还有一些我觉得需要了解一下的新特性#xff0c;写一篇作为补充。Top-Level Statements在以往的代码里#xff0c;一个应用程序必须要有 Main 方法才能运行#xff0c;从 C# 9 开始#xf… C# 9 新特性 —— 补充篇Intro前面我们分别介绍了一些 C# 9 中的新特性还有一些我觉得需要了解一下的新特性写一篇作为补充。Top-Level Statements在以往的代码里一个应用程序必须要有 Main 方法才能运行从 C# 9 开始支持没有 Main 方法的程序实际编译之后还是会有一个 Main 方法的使用示例如下using static System.Console;WriteLine(Hello World!); 实际编译出来的结果如下实际会生成一个没有命名空间的 Program$ 的类型类中定义的有一个名称是 Main$ 的静态方法Improved discards in lambda input parameter从 C# 7.2 开始我们可以使用 _ 来代表一个不使用的变量废弃变量但是在 lambda 表达式里默认不能有同名的参数名从 C# 9 开始支持多个参数同时使用 _ 来表示如下所示Funcint, int, int constant  (_, _)  42; Attributes for local function从 C# 9 开始我们可以在局部方法本地方法上设置 Attributepublic static void MainTest() {InnerTest();[MethodImpl(MethodImplOptions.Synchronized)]void InnerTest(){Console.WriteLine(nameof(InnerTest));} } Partition methods在 C# 2.0 之后就支持了分部类通常分部类会出现在动态代码生成的地方对于想要将一个类型拆分到多个文件里我们通常也会考虑用到分部类。C# 3.0 开始支持了分部方法但是功能比较弱使用起来有一些限制分部类型各部分中的签名必须匹配。方法必须返回 void。不允许使用访问修饰符。分部方法是隐式 private 的。C# 9 增强了分部方法的支持分部方法的使用只能在一个地方有方法体目前主要是为了 Source Generator 引入了这个语言特性可以在一个地方定义方法在另外一个地方实现方法体示例如下partial class PartialMethod {public static partial void MainTest();static partial void Test1(); }partial class PartialMethod {public static partial void MainTest(){Test1();Console.WriteLine(Partial method works);} } 符合 C# 3.0 分部方法规则的允许没有方法体否则必须要有方法体ModuleInitializerSource Generator 除了上面的分部方法之外还引入了一个 ModuleInitializer 的概念就像它的名字模块初始化器当用到某个模块的时候就会调用对应的 ModuleInitializer 方法进行初始化操作ModuleInitializer 定义如下namespace System.Runtime.CompilerServices {[AttributeUsage(AttributeTargets.Method, Inherited  false)]public sealed class ModuleInitializerAttribute : Attribute{} } 使用示例如下internal static class ModuleInitializerSample {/// summary/// Initializer for specific module/// /// Must be static/// Must be parameter-less/// Must return void/// Must not be a generic method/// Must not be contained in a generic class/// Must be accessible from the containing module/// /summary[ModuleInitializer]public static void Initialize(){Console.WriteLine(${nameof(ModuleInitializerAttribute)} works);} } ModuleInitlializer 对应的方法有几个要求必须是静态方法不能有方法参数无参数方法方法没有返回值返回类型必须是 void不能是泛型方法不能在泛型类中必须能够被所在模块访问的到至少是 internal来看反编译的代码可以看到有一个 Module 的类在这个 Module 类的静态构造方法里会去调用声明为 ModuleInitializer 的方法Function PointerC# 9 支持方法指针对委托进一步的”C化“进一步提升性能属于非安全代码使用需开启 unsafe使用示例如下public static unsafe void MainTest() {delegate*int, int, int pointer  Test;var result  pointer(1, 1);Console.WriteLine(result); }private static int Test(int num1, int num2) {Console.WriteLine($Invoke in {nameof(Test)}, {num1}_{num2});return num1  num2; } Static Anoymouse MethodC# 9 开始支持在匿名方法或者表达式前声明 static声明 static 之后就不能使用实例变量只能使用静态变量如下所示internal class StaticAnonymousMethod {private readonly int num  1;public void MainTest(){// anonymous methodAction action  ()  { Console.WriteLine(num); };Action action1  static ()  { };// can not access num//expressionExpressionFuncint, bool expression  i  i  num;ExpressionFuncint, bool expression1  static i  i  1;// can not access num} } Covariant Return TypeC# 9 开始支持返回类型的 Covariant协变 对于 override 方法可返回从重写基方法的返回类型派生的类型。这对于record和其他支持工厂方法的类型会很有用。可以参考下面的使用示例internal class CovariantReturnType {private abstract class Operation{}private abstract class OperationFactory{public abstract Operation GetOperation();}private class AddOperation : Operation{}private class AddOperationFactory : OperationFactory{// 返回类型协变返回具体的类型而不是抽象类中声明的类型public override AddOperation GetOperation(){return new();}}public static void MainTest(){var factory  new AddOperationFactory();factory.GetOperation();} } More除此之外还有一些小的更新特性详细可以参考文末给出的官方文档。Referencehttps://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-9https://github.com/WeihanLi/SamplesInPractice/tree/master/CSharp9Sample

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/88367.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何建网站模板小型网站建设方案

我想创建一个具有95%“精确”置信椭圆的二元正态分布的散点图.library(mvtnorm)library(ggplot2)set.seed(1)n c95 rho Sigma 我从双变量法线生成了1000个观测值,平均值为零,方差西格玛x z for(i in 1:n){z[i] p95[i] }我们可以使用stat_ellipse轻松地在生成数据的散…

门户网站建设的意义latex写wordpress

Java中线程的状态分为6种: 1.初始(NEW):新创建了一个线程对象,但还没有调用start()方法。 2.运行(RUNNABLE):Java线程中将就绪(READY)和运行中(RUNNING)两种状态笼统的称为“运行”…

网站建设拿什么框架海曙区做网站

解决数据库中的中文数据在页面显示乱码的问题 在连接的$connectionInfo中设置"CharacterSet" > "UTF-8",指定编码方式即可 $connectionInfo array("UID">$uid, "PWD">$pwd, "Database">$database…

个人微信公众号怎么做微网站网站建设程序的步骤过程

15. 小部件Menu “下拉菜单”是一种流行的方式 为用户提供多种选择,但占用 应用程序表面的最小空间,当 用户没有做出选择。 菜单按钮是 始终显示在应用程序上。 菜单是选项列表 仅在用户单击 菜单按钮。 要选择一个选项,用户可以将鼠标从 菜…

豪圣建设项目管理网站山东网站建设优化

接口测试 什么是接口 接口是两个独立部件共享信息的边界,测试中常说的接口大部分是web接口。web接口是遵循了http或者https协议的URL。 数据的流转过程 由客户端通过接口将数据发送给服务器。服务器收到数据之后,取出想要的数据,拼装成一…

哪些网站做装修wordpress下载防止盗链

2021牛客暑期多校训练营5 题号题目知识点AAway from CollegeBBoxes概率CCheating and StealingDDouble Strings线性dpEEert EsiwtibFFinding PointsGGreater Integer, Better LCMHHolding Two签到IInterval QueriesJJewels最小权匹配KKing of Range尺取法

php下载站源码长沙专业做网络的公司

C使用ffpython嵌入和扩展python(python2和python3)摘要:在服务器编程中,经常会用到python脚本技术。Python是最流行的脚本之一,并且python拥有定义良好的C API接口,同时又有丰富的文档,与C结合非常的适合。…

做食品那些网站好网站如何做的看起来高大上

创建一个简单的iOS天气应用程序涉及到多个步骤,包括设置项目、编写代码和使用外部API。由于篇幅限制,我将提供一个基础的示例,这个例子会展示如何创建一个简单的UI,获取用户的当前位置,并从OpenWeatherMap API获取天气…

网站源码在线查询北京网站搭建费用

在学习和使用python的过程中,少不了要与python idle打交道。但使用python idle都会遇到一个常见而又懊恼的问题——要怎么清屏?我在stackoverflow看到这样两种答案:1.在shell中输入1 import os 2 os.system(cls) 这种方法只能在windows系统中cmd模式下的…

网站项目功能需求清单滑县网站建设策划

今日学习的文章链接和视频链接 leetcode题目地址:383. 赎金信 代码随想录题解地址:代码随想录 题目简介 给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。 如果可以,返…

做淘宝客网站有什么服务器上哪儿找做网站

今天给大家分享一个微软官方的好东西:Channel。前言今天给大家分享一个微软官方的生产者/消费者方案的特性解决:Channel。Channel在System.Threading.Channels命名空间下,Core 2.1使用时,需要从Nuget上安装。% dotnet add package…

中国石油天然气第六建设公司网站a5站长网网站交易

文章目录 为不同的场景设计合适的缓存策略1. 缓存是什么2. 缓存的场景3. 缓存的策略4. 缓存位置5. 缓存实现的要点6. 注意问题7. 使用的组件8. 内存缓存和分布式缓存区别 总结 为不同的场景设计合适的缓存策略 1. 缓存是什么 缓存是计算结果的“临时”存储和重复使用缓存本质…

网站设计需求方案wordpress注册新用户

那得从很久很久以前说起了,记得那个时候... 懵懂的记得从前有个叫委托的东西是那么的高深难懂。 委托的使用 例一: 什么是委托? 个人理解:用来传递方法的类型。(用来传递数字的类型有int、float、double,用…

淮南网站建设服务中国建设银行太原招聘信息网站

JAVA中断线程的方法 Thread.stop, Thread.suspend, Thread.resume 和Runtime.runFinalizersOnExit 这些终止线程运行的方法已经被废弃,使用它们是极端不安全的! 现在,如果你要安全有效地终止一个线程,应该采用以下这些方法&a…

广告公司企业网站模板优化 导航网站

目录 背景 技术简介 系统简介 界面预览 背景 随着互联网的广泛渗透和进步,基于网络技术的KTV点歌系统迅速壮大,其发展始终围绕用户的实际需求展开。通过深入洞察用户的需求,开发出高度定制的管理平台,利用网络的便捷性对系统…

杭州网站建设seo怎么查网站哪里做的

我们公司在用nginx的userid模块作为简单的用户请求追踪使用。这个模块其实并不能真正记录用户的请求状态,只能作为一个辅助使用。但是在一些场景下会有一些异常。下面我们简单介绍一下这个模块到底做了什么。 userid 模块简介 官网说明文档 ngx_http_userid_modul…

龙华区网站建设政元软件做网站

文章目录一、JDBC下载与导入二、获取连接三、PreparedStatement类操作数据库四、操作BLOB类型字段(图片视频等)五、Batch批量插入🙆🏻‍♀️🙆🏻‍♀️文末最新版jdbc jar包下载 🙆&#x1f3fb…

网站备案号 如何添加目前网站开发应用到的技术有什么

JVM(Java虚拟机)是Java平台的核心组件之一,它是一个虚拟计算机,可以执行Java字节码文件。JVM解释并执行Java字节码,并提供了其他功能,如内存管理和垃圾回收。 JVM的基本功能包括以下几个方面: …

wordpress建立移动站能源门户网站建设

1、stack容器(栈) 1.1 栈stack基本概念 概念:stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口 栈中只有顶端的元素才可以被外界调用,因此栈不允许有遍历行…

cms网站官方网站包括哪几个网站

当你审查别人的代码时,你会寻找什么? 无论你是通过像 Upsource 这样的工具来审查代码,还是在同事讲解他们代码的过程中进行审查,在任何情况下,有些事情都比其他事情更容易评论。比如: 格式:空…