Cargo
Cargo
cargo是rust的构建系统和包管理工具,在安装rust的时候就一并安装了cargo。
> cargo --version
cargo 1.78.0 (54d8815d0 2024-03-26)
使用cargo创建项目
cargo new hello_cargo
会生成
- src 源码目录
- Cargo.toml
- Cargo.lock
- .gitignore 仓库文件
Cargo.toml
Tom’s Obvious, Minimal Language,是cargo的项目配置。
[package] # 包配置
name = "hello_cargo" # 包名
version = "0.1.0" # 包版本
authors = ["xiaolipro <2357729423@qq.com>"] # 作者
edition = "2021" # rust版本[dependencies] # 第三方依赖项
target
build后下载的依赖库、生成的可执行文件都在这个目录
使用cargo clean命令可以删除
> cargo cleanRemoved 224 files, 16.1MiB total
编译
cargo check
cargo check命令用于代码检查,确保编译能够通过,但不会生成可执行文件。
因此cargo check比cargo build快得多,在编码阶段就可以频繁的使用,来检查代码、提高效率。
> cargo check Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.02s
cargo build
cargo build命令就是在cargo check检查代码的基础上,多生成了可执行文件。
发布时,cargo build往往需要带上release参数,生成优化后的代码。
> cargo build --releaseCompiling hello_cargo v0.1.0 (C:\Antinew\我的\2024\rust\hello_cargo)Finished `release` profile [optimized] target(s) in 0.32s
可以看到,release模式,需要重新编译才能生成optimized代码,与之对应的,就是更长的等待时间
运行
cargo run
cargo run命令包含编译和执行。
> cargo runCompiling hello_cargo v0.1.0 (C:\Antinew\我的\2024\rust\hello_cargo)Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.46sRunning `target\debug\hello_cargo.exe`
Hello, world!
如果已经编译过了,且源码没有发生改变,那么会直接运行可执行文件。
相关文章:
Cargo
Cargo cargo是rust的构建系统和包管理工具,在安装rust的时候就一并安装了cargo。 > cargo --version cargo 1.78.0 (54d8815d0 2024-03-26)使用cargo创建项目 cargo new hello_cargo会生成 src 源码目录Cargo.tomlCargo.lock.gitignore 仓库文件 Cargo.toml…...
大学生如何学习node.js?
1. 学习 JavaScript 基础知识 语法:变量、数据类型、操作符、控制结构(if、switch、loops)。函数:定义、调用、参数、作用域。对象和原型:对象字面量、构造函数、继承。数组:方法(map、filter、…...
速盾:服务器遭受ddos攻击如何防御
DDoS(分布式拒绝服务)攻击是一种常见的网络攻击方式,旨在通过同时向目标服务器发送大量请求,以使其过载并无法正常工作。为了有效防御DDoS攻击,服务器管理员可以采取以下措施: 流量监测和分析:监…...
docker-ce 和 docker-ee介绍版本介绍
1 docker-ce 和 docker-ee介绍版本介绍 •Docker-CE指Docker社区版,由社区维护和提供技术支持,为免费版本,适合个人开发人员和小团队使用。•Docker-EE指Docker企业版,为收费版本,由售后团队和技术团队提供技术支持&am…...
[Java] TDengine时序数据库时间戳(timestamp)字段插入数据的实现方法
👉原文阅读 目录 👉[原文阅读](https://b1ankc-mov.github.io/posts/tdengine_timestamp/) 📘正文开始实体类Mapper接口Controller控制器 📘正文开始 实体类 定义实体类,插入数据分别代表打卡时间、员工id࿰…...
我的mybatis学习笔记之二
第一版学习笔记 1,接口是编程: 原生: Dao > DaoImpl mybatis: Mappper > XXXMapper.xml 2,SqlSession代表和数据库的一次会话:用完必须关闭 3,SqlSession和connection一样是非线程安全的.每次使用都必须去获取新的对象 4,mapper接口没有是一类,但是mybtis会为这个接口生…...
【网络编程开发】11.IO模型 12.IO多路复用
11.IO模型 什么是IO: IO 是 Input/Output 的缩写,指的是输入和输出。在计算机当中,IO 操作通常指将数据从一个设备或文件中读取到计算机内存中,或将内存中的数据写入设备或文件中。这些设备可以包括硬盘驱动器、网卡、键盘、屏幕等。 通常用…...
elementui Menu 二级菜单 min-width修改无效
原因:可能是生成的二级菜单样式里面没有带特定的hash属性 而vue代码里面样式里带了 scoped生成的样式有改样式选择器 从而无法成功选择 解决:让样式可以全局选择 不带属性选择器 单文件组件 CSS 功能 | Vue.js :global(.el-menu--vertical .el-menu--p…...
字符串拼接之char实现
目录 一、前言 二、memcpy函数用法 三、代码实现 一、前言 c中想到字符串拼接,我们都知道可以用c库中std::string的字符串中的简单加法进行拼接。示例: int main() {std::string str1 "hello";std::string str2 "World";std::…...
教育的数字化转型——Kompas.ai如何变革学习体验
引言 在现代教育中,数字化转型逐渐成为提升学习效果的重要手段。随着科技的进步,人工智能(AI)在教育领域的应用越来越广泛。本文将探讨教育数字化转型的发展趋势,并介绍Kompas.ai如何通过AI技术变革学习体验。 教育数…...
域内攻击 ----> DCSync
其实严格意义上来说DCSync这个技术,并不是一种横向得技术,而是更偏向于权限维持吧! 但是其实也是可以用来横向(配合NTLM Realy),如果不牵强说得话! 那么下面,我们就来看看这个DCSyn…...
前端 JS 经典:动态执行 JS
前言:怎么将字符串当代码执行。有 4 中方式实现 eval、setTimeout、创建 script 标签、new Function 1. eval 特点:同步执行,当前作用域 var name "yq"; function exec(string) {var name "yqcoder";eval(string); …...
Laravel学习-模型注入
一. 在定义路由的时候,可以在闭包函数里引入模型, Route.get(/api/user/{user:id}, function(\App\Model\UserModel $user) {return value; }) 其中:id可以省略不写,这个意思是,请求该接口时,会UserMode…...
Django模板的使用(详细版)
1、配置 在工程中创建模板目录templates(这个名字可以变!!) 在settings.py配置文件中修改TEMPLATES配置项的DIRS值 2、定义模板 在templates目录中新建一个模板文件,如index.html 3、模板渲染 Django提供了一个函数…...
正则表达式基础
正则表达式基础 一、初识正则表达式 思考–问题答案在文末 问题1:text1 ‘height:178,weight:168,sid:123456,passwd:9527’,如何快速找出密码?问题2:text2 ‘他的电话…...
【Linux】进程间通信之命名管道
👦个人主页:Weraphael ✍🏻作者简介:目前正在学习c和算法 ✈️专栏:Linux 🐋 希望大家多多支持,咱一起进步!😁 如果文章有啥瑕疵,希望大佬指点一二 如果文章对…...
【内存管理】页表映射
页表的一些术语 现在Linux内核中支持四级页表的映射,我们先看下内核中关于页表的一些术语: 全局目录项,PGD(Page Global Directory) 上级目录项,PUD(Page Upper Directory) 中间目…...
Cloudpods 强大的多云管理平台部署
简介 Cloudpods 是一款简单、可靠的企业IaaS资源管理软件。帮助未云化企业全面云化IDC物理资源,提升企业IT管理效率。 Cloudpods 帮助客户在一个地方管理所有云计算资源。统一管理异构IT基础设施资源,极大简化多云架构复杂度和难度,帮助企业…...
深度学习的可微渲染
深度学习的可微渲染 可微渲染(Differentiable Rendering)是深度学习领域的一个重要概念,它将传统的计算机图形学与深度学习结合起来,通过使渲染过程可微分(differentiable),以便于在深度学习模…...
CAS Server Restful接口实现后台认证
背景 对于一些比较复杂定制化登录页的情况下,之前提到过可以自定义修改使用CAS Server提供的登录页这种操作已经明显跟不上复杂定制场景了,所以CAS Server也提供了支持Restful接口,支持服务端后台登陆,对于复杂登陆场景时&#x…...
089、机器人动力学:拉格朗日法
机器人动力学:拉格朗日法 从一次机械臂抖动说起 去年调试一台六轴协作机器人,末端负载从0.5kg换到2kg,位置环PID参数调了三轮,静态精度勉强达标。一跑轨迹,末端抖得像筛糠。同事说“加个低通滤波”,我试了,抖动小了,但轨迹跟踪滞后明显。后来翻出动力学模型,用拉格朗…...
扬州尊客酒店用品厂:十一年用心,值得信赖
扎根扬州,十一年用心:一家把 “靠谱” 刻进骨子里的酒店用品厂在扬州生态科技新城,有这样一家企业:没有花哨噱头,不玩虚头宣传,只埋头做一件事 —— 把酒店客房里那些不起眼的一次性用品,做到让…...
【ElevenLabs情绪语音实战指南】:3步解锁开心语音API调用、情感强度微调与合规避坑全链路
更多请点击: https://intelliparadigm.com 第一章:ElevenLabs开心情绪语音技术全景概览 核心技术能力 ElevenLabs 的开心情绪语音生成并非简单音调拉升或语速加快,而是基于多任务情感条件建模(Multi-Task Emotional Conditionin…...
Divinity Mod Manager:如何用技术架构解决《神界:原罪2》模组管理的复杂性?
Divinity Mod Manager:如何用技术架构解决《神界:原罪2》模组管理的复杂性? 【免费下载链接】DivinityModManager A mod manager for Divinity: Original Sin - Definitive Edition. 项目地址: https://gitcode.com/gh_mirrors/di/Divinity…...
企业级AI助手私有化部署:Open WebUI完全指南
企业级AI助手私有化部署:Open WebUI完全指南 【免费下载链接】open-webui User-friendly AI Interface (Supports Ollama, OpenAI API, ...) 项目地址: https://gitcode.com/GitHub_Trending/op/open-webui 在数据安全和隐私保护日益重要的今天,企…...
如何解决神界原罪2模组冲突问题:Divinity Mod Manager终极指南
如何解决神界原罪2模组冲突问题:Divinity Mod Manager终极指南 【免费下载链接】DivinityModManager A mod manager for Divinity: Original Sin - Definitive Edition. 项目地址: https://gitcode.com/gh_mirrors/di/DivinityModManager Divinity Mod Manag…...
Python数据容器-元组
#元组-tuple# #数据不能被修改,只能查询# #索引访问和切片与列表类似# t1 (5,3,6,98,54,125,69,5,98)定义元组,t=(数据)# print(t1)# print(t1[5])125# t2 ()#空元组# #切片# print(t1[:7:2])5,6,54,69# #常用方法# t1 (5,3,6,98,54,125,6…...
告别复制粘贴!用Keil MDK 5.27为GD32F450搭建专属工程模板(附完整文件结构)
打造高效嵌入式开发工作流:基于Keil MDK 5.27的GD32F450工程模板设计指南 在嵌入式开发领域,重复劳动是效率的最大敌人。每次启动新项目时,开发者往往需要花费大量时间在基础环境搭建、文件结构组织和编译配置上。这种低效的工作模式不仅消耗…...
联想刃7000k BIOS权限深度解析:从用户到管理员的实战技巧
联想刃7000k BIOS权限深度解析:从用户到管理员的实战技巧 【免费下载链接】Lenovo-7000k-Unlock-BIOS Lenovo联想刃7000k2021-3060版解锁BIOS隐藏选项并提升为Admin权限 项目地址: https://gitcode.com/gh_mirrors/le/Lenovo-7000k-Unlock-BIOS 联想刃7000k …...
技能同步工具:跨平台开发环境配置自动化管理方案
1. 项目概述:技能同步,一个被低估的开发者效率工具如果你和我一样,每天需要在多台电脑(比如公司的台式机、家里的笔记本、甚至偶尔应急的平板)之间切换,并且每台设备上都配置了不同的开发环境、安装了不同的…...
