메뉴 건너뛰기

게임 커뮤니티 4브론즈

IT 해외 뉴스

本文翻译于David Pine的这篇文章: Refactor your code using alias any type。 这篇文章是四篇系列文章中的第三篇,主要探讨C# 12的各种功能。在这篇文章中,我们将深入探讨“别名任何类型”功能,该功能允许您使用 using 指令为任何类型创建别名。这个系列已经初具规模:  使用主构造函数重构 C# 代码  使用集合表达式重构 C# 代码  使用任意类型别名重构 C# 代码(本篇文章)  重构 C# 代码以使用默认 lambda 参数  所有这些功能都将继续我们的旅程,使我们的代码更具可读性和可维护性,这些被认为是开发人员应该知道的“日常 C#”功能。让我们深入了解吧!  别名任意类型*️⃣  C# 12 引入了使用 using 指令为任意类型添加别名的功能。此功能允许您指定映射到其他类型的别名。这包括元组类型、指针类型、数组类型,甚至非开放泛型类型,所有这些类型都可以在您的代码中使用。此功能在以下场景特别有用:  当使用长或复杂的类型名称时。  当消除类型歧义并解决潜在的命名冲突时。  当定义要在程序集中共享的值元组类型时。  当希望通过使用更具描述性的名称来增加代码的清晰度时。  官方 C# 文档提供了很多有关如何使用此功能的示例,但我并不想在此重复这些示例,而是决定编写一个演示应用程序来示范该功能的各个方面。 可空引用类型  此功能支持大多数类型,但可空引用类型除外。也就是说,您无法为可空引用类型设置别名, C# 编译器会报告错误 CS9132:使用的别名不能是可空引用类型。以下内容摘自功能说明,以帮助澄清这一点:  // This is not legal.


원문출처 : https://devblogs.microsoft.com/dotnet-ch/c12%E6%96%B0%E5%8A%9F%E8%83%BD%E5%90%88%E9%9B%86%E4%B8%89%EF%BC%9A%E4%BD%BF%E7%94%A8%E4%BB%BB%E6%84%8F%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%88%AB%E5%90%8D%E9%87%8D%E6%9E%84c%E4%BB%A3%E7%A0%81
번호 제목 글쓴이 날짜 조회 수
공지 자동수집 대상 사이트 KanoT 2023.02.14 2159
2211 [DevBlogs] Microsoft Teams webinar integration with HubSpot marketing automation 뉴스봇 2024.06.18 384
2210 [DevBlogs] Bosch widely adopts Visual Studio for their C++ remote Linux projects 뉴스봇 2024.06.18 1001
2209 [DevBlogs] How can I view the list of symbols available in a library? 뉴스봇 2024.06.18 396
2208 [DevBlogs] Lock-free reference-counting a TLS slot using atomics, part 3 뉴스봇 2024.06.15 380
2207 [Godot] GodotCon 24 - Submit ideas! Get tickets! 뉴스봇 2024.06.15 647
» [DevBlogs] C#12新功能合集三:使用任意类型的别名重构C#代码 뉴스봇 2024.06.14 1349
2205 [Stack Overflow] The world’s most popular web framework is going AI native 뉴스봇 2024.06.14 1107
2204 [DevBlogs] Announcing the public preview of the Microsoft AI Chat Protocol library for JavaScript 뉴스봇 2024.06.14 454
2203 [DevBlogs] The present and future of Copilot extensibility: Top 10 takeaways from Build 2024 뉴스봇 2024.06.14 375
2202 [DevBlogs] Building Generative AI apps with .NET 8 and Semantic Kernel 뉴스봇 2024.06.14 992
2201 [DevBlogs] Using PostgreSQL with .NET and Entra ID 뉴스봇 2024.06.14 582
2200 [DevBlogs] Lock-free reference-counting a TLS slot using atomics, part 2 뉴스봇 2024.06.14 372
2199 [DevBlogs] Azure OpenAI On Your Data with Semantic Kernel 뉴스봇 2024.06.13 978
2198 [DevBlogs] The .NET MAUI Extension for Visual Studio Code is now Generally Available 뉴스봇 2024.06.13 474
2197 [DevBlogs] Microsoft.AspNetCore.OData 9 Preview Release 뉴스봇 2024.06.13 1216
2196 [DevBlogs] Catch up on the latest Git tooling features in 17.10 GA 뉴스봇 2024.06.12 534
2195 [DevBlogs] Using Java with ACA dynamic sessions 뉴스봇 2024.06.12 444
2194 [DevBlogs] Building Course Registration Project with Azure SQL Database 뉴스봇 2024.06.12 963
2193 [Stack Overflow] A peek behind the curtain with Stack Overflow’s sales engineers 뉴스봇 2024.06.12 1021
2192 [DevBlogs] Visual Studio 2022 – 17.10 Performance Enhancements 뉴스봇 2024.06.12 1037
위로