转:Learn Rust the Dangerous Way-系列文章翻译-总述

embedded/2024/9/24 6:34:47/

原文地址

太精彩了,不转不足以表达我的喜爱。

前言

《Learn Rust the Dangerous Way》​cliffle.com/p/dangerust/

最近发现了一个学习Rust的优秀系列文章,本人准备对该系列文章进行翻译。

本文是《Learn Rust the Dangerous Way》系列文章翻译的第一篇

总述

《Learn Rust the Dangerous Way》是一系列文章,为可能没有正式 CS 背景的面向底层开发的C 程序员提供了 Rust 特性的上下文 - 那些工作在硬件、游戏引擎、系统内核等的人员。基本上就是,像我这样的人。

我已经把Rust加入了工具箱,我希望你也能拥抱Rust。

系列文章共有7篇,目录如下: 以下为英文目录的直译,链接指向英文原版文章。

0. Why Learn Rust the Dangerous Way? - 引言

  1. You can’t write C in just any ol’ language: - 把一个糟糕的优化过的C程序翻译成糟糕的优化过的不安全的Rust。
  2. References available upon request: - Rust引用和指针的异同,为什么我们会关心
  3. Measure what you optimize: - 仔细研究一下基于未初始化内存的优化,并将其转换为同样快的安全代码
  4. A more perfect union: - 考虑指针强制转换的替代方案,以及如何为不安全操作编写安全包装
  5. Making safe things from unsafe parts: - 最后将大部分程序转换为安全代码,并确保不安全的位是安全的。
  6. Let the compiler do the work: - 一个额外的部分,看看我们如何在原生Rust中习惯地编写程序,并依赖于自动矢量化使其快速。

译文目录:

0. Why Learn Rust the Dangerous Way? - 引言

  1. You can’t write C in just any ol’ language: - 把一个糟糕的优化过的C程序翻译成糟糕的优化过的不安全的Rust。
  2. References available upon request: - Rust引用和指针的异同,为什么我们会关心
  3. Measure what you optimize: - 仔细研究一下基于未初始化内存的优化,并将其转换为同样快的安全代码
  4. A more perfect union: - 考虑指针强制转换的替代方案,以及如何为不安全操作编写安全包装
  5. Making safe things from unsafe parts: - 最后将大部分程序转换为安全代码,并确保不安全的位是安全的。
  6. Let the compiler do the work: - 一个额外的部分,看看我们如何在原生Rust中习惯地编写程序,并依赖于自动矢量化使其快速。

http://www.ppmy.cn/embedded/7144.html

相关文章

解构 和 展开运算符

解构 {name,age}obj 1. 数组解构 数组解构是将数组的单元值快速批量赋值给一系列变量的简洁语法&#xff0c;如下代码所示&#xff1a; <script>// 普通的数组let arr [1, 2, 3];// 批量声明变量 a b c// 同时将数组单元值 1 2 3 依次赋值给变量 a b clet [a, b, c] …

【zml】vp9 vp8

目录 问题 方案 知识点 研究过程 源码编译的可能 按编译源码测试 2024-4-17 问题 所有 的机型 中&#xff0c;就海思芯片的有这个问题。应该是它的h264的编解码 问题&#xff0c;所以目前是让它以vp9在推流就没有问题。 但zlm对于vp9的录相是没有实现的。 所以目前现状…

鸿蒙原生应用元服务-访问控制(权限)开发Stage模型向用户申请授权

一、向用户申请授权 当应用需要访问用户的隐私信息或使用系统能力时&#xff0c;例如获取位置信息、访问日历、使用相机拍摄照片或录制视频等&#xff0c;应该向用户请求授权。这需要使用 user_grant 类型权限。在此之前&#xff0c;应用需要进行权限校验&#xff0c;以判断当前…

十大开源机器人 智能体

1- Poppy 网址 https://www.poppy-project.org/en/ 2- Nao 网址:https://www.aldebaran.com/en/nao 3- iCub 网址: https://icub.iit.it/

开发语言漫谈-rust

前面介绍C语言家族时忘掉了rust&#xff0c;紧急补一篇。我们称C语言家族是指他们的语法相似&#xff0c;类似这样的&#xff1a; if(){}else{}就是C家族的。C、C的传统领域就是系统底层、硬件接口方向。C/C没有垃圾内存回收机制&#xff0c;完全靠程序员的自觉天赋&#xff0…

DDoS攻击趋势分析及防御建议:网络安全新挑战与应对策略

在数字化日益普及的今天&#xff0c;网络安全问题日益凸显。其中&#xff0c;分布式拒绝服务&#xff08;DDoS&#xff09;攻击以其巨大的破坏力和难以防范的特性&#xff0c;发起简单、效果显著、难以追踪等特点&#xff0c;因此被黑客广泛使用&#xff0c;已经成为网络安全领…

2024团体程序设计天梯赛L1-101 别再来这么多猫娘了!

题目链接L1-101 别再来这么多猫娘了&#xff01; #include<iostream> #include<stdio.h> #include<string.h> #include<string> #include<algorithm> using namespace std; string s[105], text; int n, k, ans, a[5005];int main() { // ios::s…

HarmonyOS开发实例:【任务延时调度】

介绍 本示例使用[ohos.WorkSchedulerExtensionAbility] 、[ohos.net.http]、[ohos.notification] 、[ohos.bundle]、[ohos.fileio] 等接口&#xff0c;实现了设置后台任务、下载更新包 、保存更新包、发送通知 、安装更新包实现升级的功能。 效果预览 使用说明 安装本应用之…