cargo

cargo是一个用来帮助控制项目开发的工具

cargo.toml

这是一个用来管理项目的文件

首先是[package]部分

[package]
name = "foo"
version = "0.1.0"
authors = ["mark"]

三个基本的项目内容

然后是[dependencies]部分

这个部分的内容是项目需要的依赖

编译多个文件

有些时候,我们单个文件需要编译出来多个可执行文件.

我们需要定义多个main函数作为可执行文件的入口

根据rust规范,新的main函数入口文件在./src/bin文件夹下

在编译的时候需要指定--bin参数,不然会出现报错

单元测试

cargo也有类似go的test工具进行单元测试

所有的测试代码文件需要放在tests文件夹内部,后缀为_test

使用cargo test执行测试代码

自定义构建流程

cargo.toml中指定build=后面添加一个.rs文件(一般叫做build.rs文件)

可以在这个rust文件中指定执行的操作,比如制定一些先行条件.

rust学习笔记(8)的更多相关文章

  1. Rust学习笔记1

    这是一份不错的rust教程,目前包括4个block和4个project.全部完成后可以用rust实现一个简单的key-value存储引擎. 注意:Windows下rust貌似会遇到一些bug,强烈建议 ...

  2. Rust学习笔记一 数据类型

    写在前面 我也不是什么特别厉害的大牛,学历也很低,只是对一些新语言比较感兴趣,接触过的语言不算多也不算少,大部分也都浅尝辄止,所以理解上可能会有一些偏差. 自学了Java.Kotlin.Python. ...

  3. Rust学习笔记2

    继续继续... 转眼都开学啦... Building Blocks 2 building blocks里讲了一些关于Log structure storage的东西,这也是用于在硬盘上持久化KvSto ...

  4. Rust学习之旅(读书笔记):枚举 (Enum)

    Rust学习之旅(读书笔记):枚举 (Enum) C 语言的枚举类型很弱,不如后来的语言,也不如之前的语言.在 C 语言里面枚举量就是一个名字,更方便的定义常量.今天读了<The Rust Pr ...

  5. 《Rust权威指南》学习笔记——4. 认识所有权

    Rust权威指南学习笔记--认识所有权 什么是所有权 1. 所有权规则 Rust中的每一个值都有一个对应的变量作为它的所有者. 在同一时间内,值有且仅有一个所有者. 当所有者离开自己的作用域时,它持有 ...

  6. Rust 学习之旅(7):Package,Crate,Module

    Rust 学习之旅(7):Package,Crate,Module 这是第 7 章的读书笔记,Cargo Workspace 在第 14 章. Packages and Crates As a pro ...

  7. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  8. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  9. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  10. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

随机推荐

  1. 带宽计算-大B和小B的区别

    在计算机网络.IDC机房中,其宽带速率的单位用bps(或b/s)表示:换算关系为:1Byte=8bit 1B=8b    ---- 1B/s=8b/s(或1Bps=8bps) 1KB=1024B    ...

  2. Compile error: Cannot find a C++ compiler that supports both C++11 and the specified C++ flags

    reno@MyComputer:~/tools/cmake-3.12.4$ ./configure --------------------------------------------- CMak ...

  3. CentOS7 安装git 配置秘钥公钥克隆代码

    建议购买阿里云香港服务器可以免备案,系统镜像选择CentOS7测试 第一步:安装git客户端,默认安装在/usr/libexec/git-core目录 yum -y install git #查看版本 ...

  4. Qt/C++地图坐标纠偏/地球坐标系/火星坐标系/百度坐标系/互相转换/离线函数

    一.前言说明 为什么需要地球坐标纠偏这个功能,因为国家安全需要,不允许使用国际标准的地球坐标系,也并不是咱们这边这样,很多国家都是这样处理的,就是本国的地图经纬度坐标都是按照国家标准来的,所以就需要一 ...

  5. Qt编写地图综合应用22-动态轨迹

    一.前言 上一篇文章写道拿到路径规划的轨迹点坐标集合,并且已经可以通过调用addPolyline绘制线段的形式将轨迹点绘制,接下来就是要如何动态的绘制这些轨迹点,最简单的方法就是开个定时器挨个取出下一 ...

  6. FluentAssertions:C#单元测试断言库,让测试代码更加直观、易读!

    推荐一个C#开源库,用于单元测试中的断言,它提供了一系列的扩展方法,使得单元测试的断言看起来更加自然流畅. 01 项目简介 FluentAssertions 是一个基于 .NET 的断言库,它提供了一 ...

  7. Awesome-Text2GQL:图查询微调语料的自动生成框架

      过去一年,GraphRAG技术发展如火如荼,尤其是基于关键词.向量驱动的知识检索方法不胜枚举.然而通过子图召回的检索方式,对用户真实查询意图的定位仍缺乏足够的准确度.我们需要更直接的方式,将自然语 ...

  8. 前端开发常用git命令详细版

    1.新建代码库 当前目录创建一个git代码库 git init 新建一个目录文件 将其初始化为git代码库 git init [pro-name] 远端拉去项目 git clone [url] 2.基 ...

  9. w3cschool-Lua 教程

    https://www.w3cschool.cn/lua/ Lua 学习笔记之一(初阶话题) 1.八种基本类型: 如下表 基本类型 描述 备注 数值(number) 内部以double表示 字符串(s ...

  10. 学习shamir秘密分享

    介绍 1979年Shamir在下文提出基于拉格朗日插值多项式的\((r,n)\)秘密共享方案(\(0<r \leq n\)).秘密拥有者通过构建一元多项式将秘密分为\(n\)份,接收方收集大于等 ...