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

网站建设 cn什么是网站前台

网站建设 cn,什么是网站前台,wordpress 调用备案号,制作公司网站有哪些文章目录 模块系统crate包cargo 创建库库的使用 模块系统 Rust的{模块系统|the module system}#xff0c;包括#xff1a; * 包#xff08;Packages#xff09;#xff1a; Cargo 的一个功能#xff0c;它允许你构建、测试和分享 crate。 * Crates #xff1a;一个模… 文章目录 模块系统crate包cargo 创建库库的使用 模块系统 Rust的{模块系统|the module system}包括 * 包Packages Cargo 的一个功能它允许你构建、测试和分享 crate。 * Crates 一个模块的树形结构它形成了库或二进制项目。 * 模块Modules和 use 允许你控制作用域和路径的私有性。crate crate 是 Rust 在编译时最小的代码单位。如果用 rustc 来编译一个文件编译器就会将那个文件认作一个 crate。crate 可以包含模块模块可以定义在其他文件然后被编译进 crate 。 crate 有两种形式二进制项和库。 第一种形式的二进制项可以被编译为可执行程序(exe)。它必须有一个 main 函数来作为入口函数。前面的每段代码段运行时都是编译成了一个二进制项。 第二种形式就是库库其实就是工具包只不过它提供的工具是函数/类/结构体/空间等等它没有 main 函数也不会编译为可执行程序只能编译出类似于 dll/lib 之类的文件。大多数情况下 Rust 开发者说的 crate 指的都是库。库的入口为 lib.rs 。 包 在Rust中包(package)是用于组织、管理和分发 Rust 代码和库的一种结构。Cargo 就是 Rust 用来管理包的工具用 cargo 生成一个包时会含有一个 Cargo.toml 文件阐述如何构建包含有的 crate。开发者还可以将包发布到crates.io以供其他人使用。 一个包可以包含多个二进制 crate 项和一个可选的 crate 库。包中所包含的内容由几条规则来确立。 * 一个包中至多只能包含一个{library crate} * 包中可以包含任意多个{binary crate} * 包中至少包含一个 crate无论是库还是二进制。cargo 创建库 二进制项也就是exe前面用了很多了这次用 cargo 创建一个 lib 工程通过 new 指令指定类型为lib,然后就可以得到这样一个工程: 与普通工程不一样的是main.rs变成了 lib.rs然后看一下这里的代码 首先定义了一个名为 add 的函数它接受两个usize类型的参数返回一个usize类型的结果关于 pub 在Rust中pub是一个关键字用于指示项的可见性。当一个函数、结构体、枚举或其他项前面带有pub关键字时它表示该项是公开的public可以从该项的父模块或父作用域之外的地方访问和使用。 通过使用pub关键字开发者可以控制项的可见性确保某些项只能在特定的模块或作用域内使用而不会被外部代码随意访问。这种可见性控制有助于代码的组织和封装提供了更好的模块化和安全性。 简而言之pub关键字用于将Rust项标记为公开的以便可以在更广泛的范围内使用和访问。 这个后面学作用域会学到后面的是自动生成的关于测试的代码 #[cfg(test)] // 使用#[cfg(test)]属性标记下面的代码块只在执行测试时编译和运行 mod tests { // 使用super::*导入父作用域中的所有公共项以便在测试模块中使用add函数 use super::*; // 定义一个测试函数it_works #[test] fn it_works() { // 调用add函数并将结果赋值给result变量 let result add(2, 2); // 使用断言宏assert_eq!来检查result是否等于4如果不等于测试将失败 assert_eq!(result, 4); } }然后执行cargo build, 就会发现 target 下生成了一些文件 其中.d文件是用于依赖跟踪的。这个文件由编译器生成并包含了源代码文件中使用的依赖信息。主要用于构建系统中以确保在源代码文件更改时所有依赖该文件的其他文件也会被重新构建。.d文件包含了源代码文件与其依赖项之间的关系这样构建系统就可以准确地知道哪些文件需要重新编译以及哪些文件可以跳过编译。这种做法可以提高构建的效率因为只有需要重新编译的文件才会被构建而不会被重新编译的文件则会被跳过。 .rlib文件就是 Rust 的静态库文件。这个文件包含了代码的编译结果并可以用于链接到其他 Rust 项目中供其他项目使用。.rlib文件包含了库的元数据和编译后的代码它们是以平台无关的方式生成的因此可以在不同的操作系统和架构上使用。 库的使用 刚开始我以为 Rust 里的库和C里的一样是直接拿过来用的但是试了很久也没办法在本地只使用 .rlib 文件而不是用源码执行成功如果有哪位大佬知道如何仅在工程中引入 .rlib 的方式请评论说一下万分感谢 另外在论坛看到有人说 dependencies expects a Cargo package, which it will build as part of the larger build. An rlib is the final product of a compilation step. Cargo passes them around under the hood to rustc. So the question is: what are you really trying to do there? What does your project look like and why do you think using an rlib directly is the way to go?You cant use rlib with Cargo. Rust doesnt have a stable ABI, so you pretty much cant use them at all. Threat them as an internal implementation detail of Rust that is not for users.似乎是因为没有C的头文件导出的类似的机制导致无法直接使用rlib 因为使用者无法知道库中都提供了那些工具。 使用方式就是将库代码放在程序的目录下 然后在 Cargo.toml 文件中添加对库的引用可以在dependencies部分添加一行指定库的名称和路径比如 [dependencies] hellolib { path ../hellolib }然后在main.rs 中 extern crate hellolib; 就可以在代码中使用了 具体目录层级与代码如下 还有通过 crates.io 与 git 来引入库这部分后续再补充
http://www.dnsts.com.cn/news/180162.html

相关文章:

  • 河北斯皮尔网站建设wordpress 分类关键词
  • 网站建设拍金手指排名贰拾海拉尔做自己的网站
  • 专业合肥网站建设苏州公司排名
  • 唐山网站建设七彩科技网站建设教程突
  • 北京网站建设价格便宜营销型网站建设域名
  • 魏县网站建设怎么设计软件
  • 网站建设套模板视频wordpress 图片裁剪
  • 盘锦网站制作公司六安商务网站建设电话
  • 汕头建站模板系统企业建站要多少钱
  • 做网站的服务器还需要空间吗城乡建设部官网
  • 做单页免费模板网站个人网站建设如何选服务器
  • 广州购物商城网站重构网站
  • 厦门论坛网站建设青海学会网站建设公司
  • 做网站的图片素材网站有哪些查询站长工具会给网站带来外链这样好吗
  • 如何给网站添加icoseo名词解释
  • 邢台如何做企业网站提供网站建设小程序制作
  • 可以做长页海报的网站公司内部 网站开发
  • 新开传奇网站刚开一秒第一区12580黄页注册的公司
  • 安徽省建设厅网站官网网站模板html
  • 合肥建设局网站官网乌海市建设工程网站
  • 温州网站优化关键词公司网站制作机构
  • 什么网站可以做国外生意网站开发语言php
  • 网站开发海口苏州网络推广公司有哪些
  • 福田网站建设新闻成都网站建设索q479185700
  • 女排联赛排名深圳网站seo服务
  • 衡阳seo网站推广设计制作的基本步骤是什么
  • <网站建设与运营》数据分析师培训需要多少钱
  • 江苏建设人才无纸化考核网站网页设计专业培训
  • 公司做网站算什么费用网站带支付模板
  • 官方建网站有哪些步骤洛阳网站seo