- 博客(4)
- 收藏
- 关注
原创 从C++到Rust (四):面向对象漫谈
在前文的例子中,我们为对象定义了一系列的【行为】;然而,不同类型的对象可能会具有相同的行为,例如【矩形】和【圆形】这两种对象,虽然其数据成员完全不同,但是都会具有【计算面积】这样相同的行为。在这个示例代码中,我们定义了一个名为 Shape的trait,并声明了此trait应该具有的行为:它需要实现一个area方法,以返回自身的面积。定义了一个trait之后,任意的数据都可以实现此trait;println!
2023-07-06 17:18:28 338 1
原创 从C++到Rust (三):枚举类型
Rust枚举最精妙的设计在于,;来看一个业务中常见的场景:在不同组件之间,我们通常使用Message或者Command的形式在组件间通讯,并且往往需要在消息中传递一些额外的参数。如果尝试为这个场景设计API,你会发现很难用一种简单而统一的方式去传递这些信息:我们需要一个参数表示消息类型,同时需要处理不同参数类型带来的不同参数列表。在这个枚举类型中,我们定义了一系列不同的消息类型,同时为每个类型绑定一个特定类型的数据成员。值得一提的是,上述代码中的x对于命名并无要求,仅仅是作为形式参数;
2023-05-18 11:15:13 227
原创 从C++到Rust (二):所有权详解
本文面向拥有一定C++基础的开发者,尝试在C++的基础上,快速学习、理解Rust中的各种特性,帮助C++开发者向Rust转型。此文章不会详尽的介绍每一个特性细节,旨在作为“敲门砖”,帮助开发者对Rust进行快速的了解。.........
2022-08-08 14:37:50 769
原创 从C++到Rust (一):变量与基本逻辑语法
本文面向拥有一定C++基础的开发者,尝试在C++的基础上,快速学习、理解Rust中的各种特性,帮助C++开发者向Rust转型。
2022-08-05 18:00:49 1328
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人