Rust入门02-Hello!World and Cargo

第一个程序:Hello,World!

fn main(){
    println!("Hello,World!");
}

在这段代码中,我们定义了 Rust 中的一个函数:main,与其他语言相似,我们写下的所有代码都会从这个入口函数开始运行

而其函数体内的println!语句称之为宏,在 Rust 中所有以 ! 结尾的调用都意味着在使用一个宏而不是普通函数

编译与运行

运行 Rust 程序前必须先编译,其命令为(此命令仅适用于简单的Rust程序):

$ rustc main.rs

Rust 是 ahead-of-time 编译的语言,这也意味这我们可以先编译程序,然后将可执行文件交给别人运行(无需安装 Rust )

何为Cargo

Cargo 是 Rust 的构建系统和包管理工具,可用于:

  • 构建代码、下载依赖库、构建库...

Cargo.toml

  • TOML(Tom's Obvious,Minimal Language) 格式,是 Cargo 的配置格式

  • [pacakge],是一个区域标题,表示下方内容是用来配置包(package)的.

    • name 项目名
    • version 项目版本
    • authors 项目作者
    • edition Rust 版本
  • [dependencies],另一个区域的开始,它会列出项目的依赖项

在 Rust 中,代码的包称作 crate,需要注意,在 Rust 中,package也可以被叫做包,因为单个crate也是一个package,但package通常倾向于多个crate的组合。

构建、运行 Cargo 项目

  • cargo build :创建可执行文件:

    $ target\debug\hello_cargo.exe
    

    第一次运行会在顶层目录生成 cargo.lock 文件,该文件负责追踪项目依赖的精确版本,不需要手动修改该文件

  • cargo run :编译代码 + 执行结果

    如果之前已编译成功过,且源码并未改变,则直接运行二进制文件

  • cargo check :检查代码

    确保写下的代码能够通过编译,但不会产生任何可执行文件

    在编写代码的时候可以连续反复的使用 cargo check 检查代码,提高效率

  • cargo build --release :优化模式下构建并生成可执行程序

    编译时会进行优化,使代码运行速度更快,但编译时间更长

    会在 target/release 而不是 target/debug 生产可执行文件

posted on 2022-03-05 14:29  Baby091  阅读(51)  评论(0编辑  收藏  举报

导航