当前位置: 首页 > news >正文

代理小企业网站建设贵阳美丽乡村建设网站

代理小企业网站建设,贵阳美丽乡村建设网站,源码搭建网站流程,昆明软件开发公司有哪些文章目录 cargo调用模块创建库调用库 Rust系列#xff1a;初步⚙所有权⚙结构体和枚举类⚙函数进阶⚙泛型和特征⚙并发和线程通信 cargo cargo是Rust的包管理工具#xff0c;兼具一些调试功能#xff0c;在认识cargo之前#xff0c;我们都是直接新建一个.rs文件#xff… 文章目录 cargo调用模块创建库调用库 Rust系列初步⚙所有权⚙结构体和枚举类⚙函数进阶⚙泛型和特征⚙并发和线程通信 cargo cargo是Rust的包管理工具兼具一些调试功能在认识cargo之前我们都是直接新建一个.rs文件并用rustc命令来编译有了cargo则会自动创建项目文件夹示例如下 cargo new --bin hellonew用于创建一个新项目bin表示这个项目将被编译为二进制文件hello是项目名称。相应地当前路径下出现了一个hello文件夹内部结构如下 hello ├─src │ └─main.rs ├─Cargo.toml └─.gitignore其中Cargo.toml是配置文件内容如下。 [package] name hello version 0.1.0 edition 2021[dependencies]前面几行意义不大主要是申明项目名、版本号等标识但[dependencies]很重要尽管目前还未引入任何依赖。 src中的main.rs则为源代码默认的内容非常简单 fn main() {println!(Hello, world!); }接下来进入hello文件夹然后运行cargo run即可运行项目 cd hello cargo run Hello, world!调用模块 如果在src文件夹中新建一个文件add.rs内容如下 pub fn add(a:i32, b:i32) - i32{ab }其中pub即public表示这个函数可被其他文件调用。 然后修改main.rs文件内容如下 mod add; pub use crate::add::add; fn main() {println!({}{}{}, 3, 4, add(3,4)); }第一行表示使用名为add的模块第二行表示使用add模块中的add函数运行结果为 cargo run 347如果项目规模进一步扩大那么众多模块也需要组织即需要被存放在文件夹里。而这里又有一个问题即main.rs只能调用其他文件夹中名为mod.rs的文件。例如将上述src文件夹重新规划为如下样式则会报错。 src ├─add │ └─add.rs // 需要把这个文件改名为mod.rs └─main.rs而只要把add.rs改写为mod.rs那就再度正常运行了。 创建库 当工程规模变得越来越大模块化编程是唯一的出路这几乎是所有编程语言的共识Rust亦然。 在Rust中项目组织分为三个层级 Module即模块是代码的组织单元对应mod关键字Crate即包由多个模块组成对应crate关键字。package项目可用于构建、测试和分享包 而这些层级关系可通过cargo工具来进行管理下面就创建一个模块 cargo new --lib add此即创建了一个add模块当前路径下也多了一个add文件夹内有一个src子文件夹包含一个lib.rs文件默认内容如下 pub fn add(left: usize, right: usize) - usize {left right }#[cfg(test)] mod tests {use super::*;#[test]fn it_works() {let result add(2, 2);assert_eq!(result, 4);} }上面的代码中关键字pub所修饰的对象可以被模块外部所调用。这个add函数是属于这个库的唯一内容。 #[cfg(test)]下面的代码是用于测试的其mod与main.rs中使用的mod作用相似。 super标识当前文件的上一级目录也可以理解为父模块use super::*表示导入父模块的所有函数。 通过cargo test可以对上述代码进行测试。 调用库 接下来准备在hello项目中引用add库中的内容为了实现这个目的首先需要修改配置文件Cargo.toml在其依赖项下方加入库的路径 [dependencies] add { path ../add }然后修改main.rs文件如下就又可以得到347了。 extern crate add; fn main() {println!({}{}{}, 3, 4, add::add(3,4)); }
http://wiki.neutronadmin.com/news/52165/

相关文章:

  • 上海高端网站设计公司wordpress无法搜索中文
  • 网站制作九江计算机软件开发培训
  • 电商网站商品属性设计wordpress 机械模板下载地址
  • dede本地环境搭建网站c语言自学免费网站
  • 中文域名和网站的关系淄博网站建设
  • 网站建设基本模板介绍作图网站都有哪些
  • 企业在网站建设上的不足常熟东南开发区人才网
  • 网站建设实训建议河池网站优化
  • 微企点建站怎么样谷歌网站 百度
  • 建设一个网站引言网站制作公司北京
  • 河南中国建设银行官网站WordPress可以配置163邮箱吗
  • 建设网站条件wordpress漏洞上传php文件夹
  • 专门做防盗门的网站网站seo优化推广教程
  • 福州室内设计学校企业关键词排名优化哪家好
  • 网站增加栏目费用如何做网站
  • 网站服务器如何更改解析公司的 SEO与网站建设
  • 简单个人网站模板下载做国外的网站有什么不用钱的
  • 做单页网站怎么选产品微信网站建设公司费用
  • 如何实现网站的快速排名英文的购物网站
  • 重庆网站制作公司重庆wordpress custom post type
  • 国外网站 国内做镜像电商网站项目经验介绍ppt模板
  • 广西最优秀的品牌网站建设公司网站开发开票交税额
  • 58同城枣庄网站建设济南做平台网站的
  • 商城网站设计图商会网站建设开发
  • 高端网站建设公司wordpress多站点是什么
  • 网站简约式布局特点东莞市住房和城乡建设局网
  • 网站域名删除时间查询win 2003 网站 管理员
  • 虚拟主机wordpress石家庄seo优化公司
  • 自己有主机怎么做论坛网站大数据培训费用多少钱
  • 易做文学网站的logo做网站 套用模板之后用什么改