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

php商场网站开发经验nas服务器可以做网站吗

php商场网站开发经验,nas服务器可以做网站吗,公司网站排名,临汾网站建设价格点击蓝字关注我们因公众号更改推送规则#xff0c;请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络#xff0c;侵删C# 11 现已发布。公告称#xff0c;“随着每个版本的发布#xff0c;社区的参与度越来越高#xff0c;贡献了从建议、见解和错误报告到整个功…点击蓝字关注我们因公众号更改推送规则请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络侵删C# 11 现已发布。公告称“随着每个版本的发布社区的参与度越来越高贡献了从建议、见解和错误报告到整个功能实现的所有内容。这真的是每个人的 C#。”新版本中的一些亮点更新内容包括UTF-8 字符串UTF-8 String Literals默认情况下C# 字符串被硬编码为 UTF-16而 Internet 上通行的字符串编码是 UTF-8。为了最大限度地减少转换的麻烦和性能开销现在可以简单地为你的 string literals 附加一个u8后缀以便立即将它们转换为 UTF-8var u8 This is a UTF-8 string!u8;UTF-8 string literals 只是给你返回一个字节块 —— 以ReadOnlySpanbyte形式。对于那些需要 UTF-8 编码的场景这可能比一些专门的新的 UTF-8 字符串类型更有用。阅读有关 UTF-8 字符串文字的文档https://learn.microsoft.com/dotnet/csharp/language-reference/builtin-types/reference-types#utf-8-string-literals原始字符串 Raw string literals从 C# 11 开始可以使用原始字符串字面量更轻松地创建多行字符串或使用需要转义序列的任何字符。原始字符串字面量无需使用转义序列。你可以编写字符串包括空格格式以及你希望在输出中显示该字符串的方式。 原始字符串字面量以至少三个双引号字符序列 () 开头和结尾。可以使用三个以上的连续字符开始和结束序列以支持包含三个或更多重复引号字符的字符串字面量。单行原始字符串字面量需要左引号和右引号字符位于同一行上。多行原始字符串字面量需要左引号和右引号字符位于各自的行上。在多行原始字符串字面量中会删除右引号左侧的任何空格。Raw string literals 由至少三个双引号分隔var raw1 This\is\all content!; Console.WriteLine(raw1);This prints:This\is\all content!如果你需要三个或更多的s 成为你内容的一部分只需在外部使用更多的s。开头和结尾必须一致。var raw2 I can do , , or even double quotes!;这使得粘贴、维护和一目了然地阅读文字所包含的内容变得非常容易。多行 raw string literals 也可以截断前导空格末端引号的位置决定了空格开始包含在输出中的位置var raw3 element attrcontentbodyThis line is indented by 4 spaces./body/element; // ^white space left of here is removed由于末端引号的左侧有四个空格因此将从每行内容的开头删除四个空格从而产生以下输出elementattrcontentbodyThis line is indented by 4 spaces./body /element此外Raw string literals 还支持插值可在文档中阅读有关的更多信息https://learn.microsoft.com/dotnet/csharp/programming-guide/strings/#raw-string-literals对静态成员进行抽象在 C# 11 中发布了对接口中静态虚拟成员的支持此功能在 C# 10 中处于预览状态。有了它你现在可以定义一个非常简单的数学接口publicinterfaceIMonoidTSelf whereTSelf: IMonoidTSelf {publicstaticabstractTSelfoperator(TSelf a, TSelf b);publicstaticabstractTSelfZero{ get; } }任何人现在都可以通过为两个静态成员提供实现并将自己作为TSelf类型参数传递来实现此接口publicstructMyInt: IMonoidMyInt {intvalue;publicMyInt(int i) value i;publicstaticMyIntoperator(MyInt a, MyInt b) newMyInt(a.value b.value);publicstaticMyIntZero newMyInt(0); }重要的是你如何使用这些抽象的操作当没有实例可供调用时你如何调用虚拟成员答案是通过泛型T AddAllT(params T[] elements) where T : IMonoidT {T result T.Zero;foreach(var element in elements){result element;}return result; }类型参数T受IMonoidT接口约束这使得该接口的静态虚拟成员Zero和可以在Titself 上被调用。现在我们可以用一些MyInt来调用泛型方法而和Zero的正确实现则通过类型参数传递进来MyInt sum AddAllMyInt(newMyInt(3), newMyInt(4), newMyInt(5));事实上.NET 7 提供了一个新的命名空间 System.Numerics其中充满了数学接口代表了不同的运算符组合和其他你想使用的静态成员上述小 IMonoidT 接口的 grown-up 版本。.NET 中的所有数字类型现在都实现了这些新的接口 -- 你也可以为你自己的类型添加这些接口。还值得注意的是静态虚拟成员对数学以外的其他事物也很有用。更多详情可在有关静态抽象接口方法和通用数学的文档中查看。即使你不使用静态虚拟成员创建接口也可以从他们现在和将来对 .NET 库所做的改进中受益。列表模式List patternsPattern matching 是在 C# 7 中引入的从那时起它已发展成为该语言中最重要和最强大的控制结构之一C# 11 添加了列表模式。从 C# 11 开始可以将数组或列表与模式的序列进行匹配如以下示例所示int[] numbers { 1, 2, 3 };Console.WriteLine(numbers is [1, 2, 3]); // True Console.WriteLine(numbers is [1, 2, 4]); // False Console.WriteLine(numbers is [1, 2, 3, 4]); // False Console.WriteLine(numbers is [0 or 1, 2, 3]); // True如前面的示例所示当每个嵌套模式与输入序列的相应元素匹配时列表模式就会匹配。可使用列表模式中的任何模式。若要匹配任何元素请使用弃元模式或者如果还想捕获元素请使用 var 模式如以下示例所示Listint numbers new() { 1, 2, 3 };if (numbers is [var first, _, _]) {Console.WriteLine($The first element of a three-item list is {first}.); } // Output: // The first element of a three-item list is 1.前面的示例将整个输入序列与列表模式匹配。若要仅匹配输入序列开头或 / 和结尾的元素请使用列表模式中的切片模式..如以下示例所示Console.WriteLine(new[] { 1, 2, 3, 4, 5 } is [ 0, 0, ..]); // True Console.WriteLine(new[] { 1, 1 } is [_, _, ..]); // True Console.WriteLine(new[] { 0, 1, 2, 3, 4 } is [ 0, 0, ..]); // False Console.WriteLine(new[] { 1 } is [1, 2, ..]); // FalseConsole.WriteLine(new[] { 1, 2, 3, 4 } is [.., 0, 0]); // True Console.WriteLine(new[] { 2, 4 } is [.., 0, 2, 4]); // False Console.WriteLine(new[] { 2, 4 } is [.., 2, 4]); // TrueConsole.WriteLine(new[] { 1, 2, 3, 4 } is [ 0, .., 2 or 4]); // True Console.WriteLine(new[] { 1, 0, 0, 1 } is [1, 0, .., 0, 1]); // True Console.WriteLine(new[] { 1, 0, 1 } is [1, 0, .., 0, 1]); // False切片模式匹配零个或多个元素。最多可在列表模式中使用一个切片模式。还可以在切片模式中嵌套子模式如以下示例所示voidMatchMessage(string message) {var result message is [a or A, .. var s, a or A]? $Message {message} matches; inner part is {s}.: $Message {message} doesnt match.;Console.WriteLine(result); }MatchMessage(aBBA); // output: Message aBBA matches; inner part is BB. MatchMessage(apron); // output: Message apron doesnt match.voidValidate(int[] numbers) {var result numbers is [ 0, .. { Length: 2 or 4 }, 0] ? valid : not valid;Console.WriteLine(result); }Validate(new[] { -1, 0, 1 }); // output: not valid Validate(new[] { -1, 0, 0, 1 }); // output: valid更多详情可查看相关文档https://learn.microsoft.com/dotnet/csharp/language-reference/operators/patterns#list-patternsRequired members开发团队已经在多个版本中进行了改进对象的创建和初始化的工作C# 11 则通过 required members 来继续这些改进。在创建使用对象初始化器的类型时曾经无法指定必须初始化某些属性。现在可以说一个属性或字段是required。这意味着当创建该类型的对象时它必须被对象初始化器初始化publicclassPerson {public required stringFirstName{ get; init; }publicstring? MiddleName{ get; init; }public required stringLastName{ get; init; } }现在在不初始化两个必需属性的情况下创建一个Person是错误的var person newPerson{ FirstName Ada}; // Error: no LastName!如果你年满18周岁以上又觉得学【C语言】太难想尝试其他编程语言那么我推荐你学Python现有价值499元Python零基础课程限时免费领取限10个名额▲扫描二维码-免费领取戳“阅读原文”我们一起进步
http://www.zqtcl.cn/news/461956/

相关文章:

  • 网站前端建设需要学会什么意思wordpress 快递查询 插件
  • 网站建设腾讯云与阿里云做网站上市的公司
  • 视频直播网站app开发网站备案主体是
  • 做的好的微信商城网站建设商务网站
  • 小白用网站建设工具专做奢侈品品牌的网站
  • 安装vs2015网站开发外包公司为什么没人去
  • 网站关键字多少合适唐河微网站开发
  • 临沂网站建站专业公司网站开发 文学
  • 乐清网站建设服务定制企业网站建设
  • 简单公司网站模版百度站长工具抓取诊断
  • 网站建设与管理维护 大学论文铁路建设单位网站
  • 贵州企业展示型网站建设wordpress文章点不开
  • 毕业设计可以做网站吗网页版征信报告查询
  • 企业网站每年的费用钢筋网片每平米重量
  • 做网站是属火的职业吗苏州网站建设信息网络
  • 怎么自己建一个论坛网站如何做中国古城的网站
  • 做网站表格网站建设综合实训案例
  • vs2012 网站开发wordpress好看的页面跳转
  • 阿里去要企业网站建设方案书小程序开发 杭州
  • 微信公众号文档网站开发与优化课程总结
  • 网站建设网课海东营销网站建设公司
  • 仿站工具教程视频宣传片免费模板
  • 美食网站建设项目分析报告莱芜都市网人才招聘
  • js做网站福田网站设计公司
  • 郑州做网站好长春市建设工程信息网站
  • 题库网站怎么做做网站文件夹都起什么名字
  • 河南网站怎么备案东台市住房和建设局网站
  • 有什么手机做网站的asp.net网站安全
  • 怎么做查询网站后台做爰的视频网站
  • 迪虎科技网站建设国际市场那个app可以看