Rust开始

简介: Rust开始

rust开始

注重安全性和并发性

更安全更高效的代码

内存安全是不出现内存的访问的错误。

rust建立了严格的内存管理模型–所有权系统和类型系统。

泛型和trait系统使得rust具备了强大的抽象表达能力。

搭建编程环境
安装rust

rust由工具rustup安装和管理。

rustup既是rust安装器,又是版本管理工具。

最新稳定版的rust的下载与安装:

curl --proto "=https" ==tlsv1.2 -sSf https://sh.rustup.rs | sh

安装成功会出现以下的内容

Rust is installed now,Great!
设置PATH环境变量

在rust开发环境中, rustc、cargo 和 rustup等所有Rust工具都安装在~/.cargo/bin 中, 可以将其加入PATH环境变量中

在~/.bash_profile文件中增加:

export PATH="$HOME/.cargo/bin:$PATH"

使用source命令让配置立即生效

source ~/.bash_profile

运行以下命令,检查是否已经正确设置

rustc --version

rustc 1.59.0 (9d1b2106e 2022-02-23)

版本号 提交的哈希值 日期

更新和卸载Rust

更新

rustup update

卸载

rustup self uninstall
编写程序

Hello Rust程序

1. 编写Rust程序

main.rs源文件

fn main(){
    println!("Hello,Rust");
}
  1. 编译、运行Rust程序
    编译
rustc main.rs
  1. 在当前文件夹中会生成一个名为main的可执行程序
./main
  1. 分析Rust程序
  • fn用于函数声明的关键字
  • 函数体在大括号{}中
  • 默认情况下,main函数是可执行程序的入口函数,无参、无返回值
  • 每个语句使用分号;结尾
使用Cargo

Rust提供的构建工具和包管理器Cargo,可以方便的构建代码、下载依赖库并编译这些库 。

Cargo的常用命令:

查看cargo的帮助信息:

cargo -h

显示某个命令的帮助信息

cargo help <command>
1. 创建项目

cargo可以创建两种类型的项目

  • 可执行的二进制程序
  1. 创建可执行的二进制程序
cargo new project_name
cargo new project_name --lib

生成的可执行的二进制程序工程的目录信息

project_name
|- Cargo.toml
|-src
   |- main.rs
  • Cargo.toml 是项目的数据描述文件,包含项目的元数据和依赖库
  • src/main.rs 源代码文件
2. 编译运行项目

编译项目

cargo build

cargo build命令会在target/debug/目录下生成一个可执行文件

cargo run 命令在编译的同时运行生成的可执行文件

3. 发布项目

最终发布项目时,可以使用 cargo build --release 来优化编译项目。

会在target/release目录下生成一个生产环境中使用的可执行文件

相关文章
|
并行计算 Linux 测试技术
GPU实例使用--单实例上运行Linux桌面多开解决方案
客户前期使用的旧异构实例面临更新换代,新的推荐异构实例性能更强,客户的业务软件运行时,GPU使用率不高,需要探索多开方案,提高GPU使用率,提高实例性价比。
|
缓存 数据库
定时器的应用场景?
定时器的应用场景?
1088 0
|
6月前
|
存储 监控 物联网
RFID室内资产定位让管理更简单
RFID室内资产定位技术利用射频信号实现资产精准定位与实时追踪,提升管理效率,减少人为错误,优化资源配置。通过标签、阅读器与后台系统协同工作,实现资产查找、监控、出入库、维护及数据分析等全流程智能化管理。
|
存储 Linux 开发工具
哪吒开发板的使用初尝试
哪吒开发板的使用初尝试
|
10月前
|
NoSQL MongoDB 微服务
微服务2——MongoDB单机部署1——下载安装
本指南介绍在Windows系统上安装和启动MongoDB的步骤。首先,从官网下载适用于32位或64位系统的预编译二进制包,选择稳定版(y为偶数)。解压后创建数据目录`data/db`,可通过命令行参数(如`mongod --dbpath=..\data\db`)或配置文件启动服务。配置文件需注意转义字符与空格使用,支持自定义日志路径、端口等参数。将bin目录加入环境变量可简化启动操作。
275 0
微服务2——MongoDB单机部署1——下载安装
|
12月前
|
Ubuntu NoSQL 关系型数据库
《docker基础篇:6.本地镜像发布到私有库》包括本地镜像发布到私有库流程、docker regisry是什么、将本地镜像推送到私有库
《docker基础篇:6.本地镜像发布到私有库》包括本地镜像发布到私有库流程、docker regisry是什么、将本地镜像推送到私有库
323 29
|
12月前
|
数据采集 人工智能 并行计算
《鸿蒙Next的GPU Turbo:决策树在图形AI领域的加速引擎》
在人工智能与图形处理融合的时代,鸿蒙Next的GPU Turbo技术显著提升决策树在图形相关AI任务中的处理能力。该技术通过软硬协同优化,重构图形处理框架,加速数据预处理、特征提取、模型训练与推理,支持多任务并行处理,并降低能耗,提高系统稳定性。例如,在智能驾驶中,GPU Turbo助力快速识别道路图像,为行驶决策提供支持,未来将在更多领域展现卓越性能。
404 7
|
存储 人工智能 搜索推荐
整合长期记忆,AI实现自我进化,探索大模型这一可能性
本文探讨了通过整合长期记忆(LTM),AI模型能否实现自我进化,以提升处理新任务和适应环境的能力。LTM能帮助模型存储和利用长期信息,提高决策质量和服务个性化水平。文章还讨论了LTM整合的挑战及解决方案,以及如何借鉴人类记忆机制设计有效的LTM策略。[论文链接](https://arxiv.org/pdf/2410.15665)
699 17
|
数据采集 自然语言处理 UED
文档智能和检索增强生成(RAG)技术
文档智能和检索增强生成(RAG)技术