自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 Rust Match 表达式完全指南:从小白到精通

Match 是 Rust 中的模式匹配工具,类似于其他语言的switch,但强大得多。它能让你对某个值进行多种情况的判断,并对每种情况进行不同的处理。let x = 5;match x {("一"),("二"),("三"),("其他数字"),match x是匹配的对象1 =>是一个模式分支println!("一")是执行代码是通配符,匹配所有没有明确列出的情况✨✅ Match 表达式的基本语法✅ 10+ 种不同的模式类型✅ 守卫条件和复杂匹配。

2025-10-30 15:42:41 365

原创 Rust 模式匹配的穷尽性检查:从入门到精通

简单来说,穷尽性检查就是 Rust 编译器会确保你的match表达式处理了所有可能的情况。如果你漏掉了某个分支,编译器会直接报错,不让你的代码通过编译。这听起来很严格,但正是这种严格性让 Rust 程序更加健壮!✨。

2025-10-30 15:42:01 1233

原创 Rust `if let` 与 `while let` 语法糖:从入门到实战

特性if letwhile letmatch使用场景单次模式匹配循环模式匹配多分支匹配简洁性⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐穷尽性检查❌❌✅适合初学者✅✅✅恭喜你!你已经掌握了if let和while let这两个强大的语法糖!if let用于简化单一模式的匹配while let用于需要循环的模式匹配它们让代码更简洁,但不要过度使用当需要完整的模式匹配时,match仍然是最好的选择。

2025-10-30 15:41:11 362

原创 Rust 解构完全指南:元组、结构体与枚举

元组是Rust中最基础的数据结构,可以包含多个不同类型结构体让你能够给数据赋予具体的含义age: u32,枚举让你能够表示多种可能性Ok(T),Err(E),Quit,特性适用场景优势元组解构简单的多值返回快速提取多个值结构体解构提取特定字段代码意图清晰枚举解构处理多种可能保证所有情况都被处理if let只关心一个情况避免冗长的 match。

2025-10-30 15:40:08 366

原创 Rust 匹配守卫(Match Guards)完全指南

在 Rust 中,我们经常使用match表达式进行模式匹配。但有时候,单纯的模式匹配还不够,我们需要额外的条件判断。这时候,匹配守卫就派上用场了!简单来说:匹配守卫就是在模式后面加上一个if条件,只有当模式匹配并且条件为真时,才会执行对应的分支。

2025-10-30 15:26:17 306

原创 深入仓颉:类型别名 (typealias) 的正确使用姿势与高级实践

在处理回调函数或高阶函数时,typealias能极大地“净化”你的函数签名。// 假设有一个网络请求回调// 没有别名时,函数定义是这样的:// ...// 使用 typealias 优化:// 函数签名瞬间清爽了!// ...使用typealias** 当你只关心“简化”和“可读性”。你不关心类型安全问题(或者混用也无妨妨)。UserList。使用struct当你必须保证类型安全,防止不同含义的同构类型(如String)被混用。

2025-10-29 17:15:07 603

原创 仓颉语言协变 & 逆变的工程化博客 —— 从语法规则到架构决策的全景地图

在仓颉,变型不仅是“语法选项”,而是并发安全 + 模块自治 + 二进制兼容的三重保险。把in/out写进接口定义的那一刻,你就为整个系统引入了不可破坏的读写契约。“让编译器做门卫,开发者只做设计。

2025-10-29 17:13:55 442

原创 仓颉语言:泛型类型参数与约束 — 从入门到精通

泛型(Generics)允许我们在定义函数、类或接口时使用类型参数,而不是具体的类型。这样可以让同一段代码适用于多种数据类型。// 没有泛型的情况// 使用泛型💡优势:代码复用性提高,类型安全得到保证,减少代码冗余。仓颉的泛型类型参数与约束系统提供了强大而灵活的抽象能力:✅类型安全:编译期捕获类型错误✅代码复用:一次编写,多处使用✅性能优异:单态化确保零成本抽象✅表达力强:丰富的约束机制满足复杂需求掌握泛型编程是成为仓颉高级开发者的必经之路!继续实践,你会发现泛型的更多精妙之处。💪。

2025-10-29 17:12:46 254

原创 仓颉编程语言静态类型系统的设计理念

仓颉的静态类型系统体现了华为对编程语言的深远思考:它不仅是错误检测工具,更是高效、安全、并发与性能的综合体。通过由浅入深的特性设计,仓颉降低了开发门槛,同时为鸿蒙生态注入活力。在国产软件浪潮中,仓颉代表了从“借鉴”到“创新”的转变。开发者可通过其白皮书和开发者社区进一步探索,期待它在AI时代绽放更多光芒。

2025-10-29 17:11:36 1215

原创 仓颉(Cangjie)类型推导机制与规则 ——从“一眼能看出的类型”到“编译器如何替我想清楚”

但仍保持静态类型语言的安全与性能。如果你在实战中遇到“编译器怎么又猜错了”的疑惑,欢迎随时来讨论,我们一起把仓颉的类型系统玩出花来!局部细化是**流敏感(flow-sensitive)**的,离开分支后恢复联合类型。(Effect Inference),届时推导器将进一步扩展为。:遍历 AST,为每个表达式生成类型变量与约束。理解这些高层理念后,我们再层层剥开细节。注意:字面量类型不是强制单例,只有在后续。模式匹配同样触发细化,并且可以在。放宽是一次性的:如果再次赋值。时才退化成对应原始类型。

2025-10-29 17:09:09 523

原创 CSDN新手成长指南:从入门到精通

作为CSDN的新人,你已经站在了一个充满机遇的新起点上。通过不断学习、实践和交流,你将在这里找到成长的空间和进步的动力。记住,每一步的成长都是你努力的结果,保持耐心和热情,你将在CSDN上取得成功。

2024-12-06 10:30:22 1695 2

转载 封装、继承与多态究极详解

这个系列我们将就封装、继承、多态概念来展开,尽可能详尽且底层的将他们的原理性的东西展示出来!封装只有类能做吗?结构体如何封装?名空间能实现封装吗?封装有哪些好处?继承的特殊情况说明,比如多继承带来的菱形继承问题……继承时如何合理细分类的职责?多态的具体规则,引入指针之后的资源分配本质……多态的虚函数表和虚函数指针具体是什么?创建时机是什么?多态的静态绑定和动态绑定是什么?有什么区别?继承一定好吗?组合优于继承这句话的依据是什么?什么条件下适用?

2024-12-06 10:23:24 106

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除