汽车美容网站源码wordpress 中文表单
2026/1/10 11:12:23 网站建设 项目流程
汽车美容网站源码,wordpress 中文表单,服装生产厂商网站建设方案,信息产业部网站备案系统本文假设你已经学过cpp语言咧变量部分变量可以自动推断类型。变量默认不可改#xff0c;可改变量要用let mut 进行声明#xff0c;同名可以进行遮蔽#xff0c;不限类型。变量类型用 #xff1a;i32这种在let或者let mut 后进行声明。元组VS数组#xff1a;元组是任意变量…本文假设你已经学过cpp语言咧变量部分变量可以自动推断类型。变量默认不可改可改变量要用letmut进行声明同名可以进行遮蔽不限类型。变量类型用i32这种在let或者letmut后进行声明。元组VS数组元组是任意变量的集合数组只能是一种元素但是都不能改变大小元组用.来访问数组还是[]函数部分函数参数要指定类型但是在后面指定跟go一样。rust分语句和表达式区别在与是否返回值像是leta5就不会返回值但是cpp的赋值就会返回5.表达式可以是语句的一部分。表达式的结尾没有分号。如果在表达式的结尾加上分号它就变成了语句而语句不会返回值。函数的返回值首先在函数名后面要加上类型如fnfive()-i32...使用return可以提前返回在最后的不加的表达式代表隐式返回一定不能加加了就是语句语句就是操作序列不返回值那么函数就没有返回值了。控制流if表达式这里的if后面跟的条件必须是bool不支持默认转。if要是想用分支的表达式来赋值必须保证所有分支的类型是一样的不然可能会出现问题原因是rust需要在编译的时候就要指定类型。loop表达式looploop可以返回值在break后面加对应的值就可以返回。在嵌套循环中可以用循环标签来指定break或者continue某一层而不用默认最里层。while后面加上条件符合就循环不符合就跳出。forfor循环可以对于元组或者数组中的每一个元素执行计算fortepina...所有权堆长度可变的栈长度固定的所有权是用来垃圾回收的。string是分配在堆上的类似于rall离开作用域堆上的内存会被自动的释放drop。rust是不存在浅拷贝的只会移动之前被拷贝的会失效。同时赋值之后原来的也会被释放。深拷贝要用clone。cpp虽然有RALL但是主要自己写析构函数但是rust自己调用dropcpp原来的指针实效了但是还是有可能被访问但是rust在编译阶段会拦截这种行为。可以定义引用定义就可以直接使用然后不拿所有权mut规定为可变引用。如果你有一个对该变量的可变引用你就不能再创建对该变量的引用。引用的作用域在最后一次使用之后结束。当你拥有一些数据的引用编译器确保数据不会在其引用之前离开作用域。slice是元组或者数组中一部分值的引用。结构体差不多跟cpp就是赋值的时候要注意是move但是是针对于具体某一个元素的操作比如你move了第一个元素但是第二个在堆上的还可以正常访问。可以给结构体绑定函数用impl然后要用self同时类似于cpp的静态函数rust也提供这种函数可以通过结构体名方法名进行访问。包、crate包是一个项目包含多个cratecrate是最小编译单元就是一个文件包含main的编译产生可执行文件叫二进制main不包含的叫库crate。Rust 中 crate 的边界由 crate root 决定不由 .rs 文件数量决定。单个 .rs 文件只有在作为 crate root 被编译时才是 crate否则只是模块。Rust 通过文件/目录名来表示模块层级目录名必须与模块名一致否则模块路径无法映射某个模块的子模块必须在模块的同名目录下。现在进行总结在根crate中可以包含别的mod然后这个mod可以直接跟在后面或者是一个同级目录下的文件.rs或者模块名/mod.rs,然后子模块下还可以引入模块如果是一个同级目录下的文件.rs那么其子模块必须放在一个同名目录下然后模块名/mod.rs就直接放在同一级就可以。用pub可以让父模块引用子模块子模块天生可以访问父模块。用use可以引入模块然后哦就可以直接用最后一个的名字来访问而不是每一次都一大堆同时在 Rust 中引入父模块use path并不会自动把子模块、子项或 trait 一起引入作用域。 子项必须显式引入。vector、string、hashmapvectorletv:Veci32Vec::new();push();直接下标或者getget返回None下标会奔溃注意要用不然会move。letvvec![1,2,3];有一个被引用之后可能就会拒绝push。遍历用forin多种类型用枚举加赋值。stringstring实际上就是一个vec不过多了一些功能大部分以借用的形式出现。强调这里不能用索引因为一个元素可能不是一个字节。hashmapTrait是一种类似于接口的东西跟golong不一样的地方在于区别在于impl关键字之后我们提供需要实现 trait 的名称要 use trait 才能调用 trait 方法最重要的是可以用这个来接受不同的类型只要实现了这个接口就可以进行匹配。生命周期注解指定引用的生命周期确保多个引用活的一样久。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询