Rust之旅

这人有点喜新厌旧,总是无法专注的学习一个知识很长时间,今天学vue的时候看了两个小时就忍不住来看rust了,毕竟deno的作者抛弃go改用rust重写,我也想看看rust到底有什么优于go的。


安装

有关安装可以参考一下这个网页,我因为之前重装了系统,所以实在舍不得C盘的内存了,就在我的云服务器里装了。

Hello,world!

1
2
3
fn main() {
    println!("Hello,world!");
}

学习一门新的编程语言,第一步莫过于Hello,world了!

  • 首先fn main()声明了一个main函数,println!调用了一个Rust宏(macro)。如果是调用函数,则应输入 println(没有!)。只要有!就意味着调用的是宏而不是普通函数。

  • rust语句以;结尾。

  • rust源文件后缀为.rs

  • 编译与运行:类似于C语言,我们需要先通过rustc来编译rust源文件,生成一个可执行文件。例如:

    //hello_world.rs
    fn main() {
        println!("Hello,world!");
    }
    
    //通过命令rustc hello_world.rs编译,linux系统下会多出一个hello_world的可执行文件,而windows则会出现hello_world.exe
    $ ./hello_world #windows是.\hello_world.exe
    $ Hello,world!
    

Cargo

类似于go的govendor,cargo是rust的构建系统和包管理器。安装rust的时候会默认安装cargo,通过cargo --version检查。

  • 新建一个项目

    cargo new hello_cargo这个命令的作用是,新建一个名为hello_cargo的项目(目录),该目录包含两个文件和一个目录:一个 Cargo.toml 文件,一个 src 目录,以及位于 src 目录中的 main.rs 文件。它也在 hello_cargo 目录初始化了一个 git 仓库,以及一个 .gitignore 文件。如果我们曾经配置过git,那么在我们的Cargo.toml里就会出现我们的信息啦!18.png

  • crates

    在rust中,代码包被称为crates,在配置文件Cargo.toml中的[dependencies]就是用来配置项目的依赖的。

加载评论