大白话rust系列01注释

大家好,这是大白话讲rust系列的第一讲

希望通过这个系列,本人能慢慢掌握rust的精髓,也希望读者朋友通过本系列能有所收获

在AI时代下,越来越多的文章充满了AI味或者完全是AI输出的

本系列会尽量保证文章的内容是古法手敲,代码验证完好。并且内容足够通俗易懂。

话不多说,开始发车了

这一讲先讲注释。写过代码的朋友都会想,注释有什么好讲的?其实,里面的东西还是有点意思的。远不是两个斜杠这么简单

单行注释

复制代码
fn main() {
    //这是一个注释
    println!("Hello, world!");

    let name     /*代码种的注释 */ = "chen";

    /*这是一个
       这是一个
       这是一个
       这是一个
       这是一个
       这是一个
       这是一个
       这是一个
       多行注释*/

}

上面的代码展示了两种单行注释和多行注释。其实从这一小段代码,能看到比较有趣的东西

println!怎么带了个问号?

这是一个宏调用,而不是普通函数调用,不用担心忘记写这个叹号,不写的话编译器会直接给你报错。Rust 中有很多宏:

复制代码
println!()
print!()
format!()
vec![]
panic!()

这里暂时先不说宏调用是什么,记一下这个关键字即可。运行一下这个代码吧

虽然没有报错,但是有一个警告,说name被定义了但是没有使用它,这个在编译器看来其实是一些无用代码。如果你就是要定义一个变量然后不使用它,可以在在前面加上下划线

改为_name后,果然没有warning啦。

文档注释

注意看,上述代码报错了,是因为,这个其实是一个文档注释!!!

/**注释内容*/ 这是文档注释,不管你是写了单行还是多行

/*注释内容*/ 这是单行或者多行注释

两者区别是文档注释多了一个星号~

另外,///也是文档注释。那么如何让文档注释编译的时候不报错?

文档注释后面带一点内容就行了,不管是方法还是局部变量啥的。文档注释是给外部人员看的,如果可以的话尽可能写的规范

在控制台输入cargo doc --open

rust会在当前工程的根目录下生成target/doc/hello_rust/index.html并且打开这个html

doc下不止生成了这一个html,还有其他一些,可以自己去跑一下代码看看

这个文档注释在写一些标准api给到外部人员时还是挺好用的

好了,第一讲关于注释不知不觉讲的有点多了,就此停住,下期再见,拜~

相关推荐
FRing0311 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
by2099912 小时前
C++ 智能指针的所有权与使用
开发语言·c++·经验分享
砚底藏山河12 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
IT召唤狮12 小时前
开源企业级零信任项目Pangolin,零信任能挡住PHP核弹漏洞吗?
开发语言·开源·php
知已难寻12 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
Rover Ramble12 小时前
C++ 用互斥锁实现读写锁
开发语言·c++
码流子13 小时前
移动收费怎么做?手持终端+App+收费中心的架构实践
java·开发语言·架构
雪落漂泊13 小时前
C++算法 滑动窗口篇(下)
开发语言·c++
云创智城-yuncitys13 小时前
YunParking 4.0:JDK 17 与 Spring Boot 3.2 的停车云升级
java·开发语言·spring boot
郭小李13 小时前
openFeign入门
java·开发语言·前端