Rust下划线通配符并不会绑定任何值
也就是说,let _ = Something::new() 这样的声明,下划线并不会获得所有权
该文章对这种情况做了说明,并指出一种可能造成bug的情况。
使用Rust编写Fizzbuzz示例
主要是通过该示例来了解Rust中的trait,该文章中用到了迭代器、闭包
Niko的博文:关于将Never Type引入match匹配的想法
Never类型就是(!),将Nerver引入match匹配,比如有可能解决穷举匹配的问题
对象模型和标识
该文对比了C++和Rust的对象,不过这里指的对象(Object)是广义上的,并不是特指OOP中的对象。
该文中举的这个例子值得注意:
struct X;
let x = X;
println!("{:p}", &x as *const _);
let y = x;
println!("{:p}", &y as *const _);
变量x在move以后,打印出来的地址,在Debug模式下是不同的,但是在release模式下是相同的
使用Clippy发现Rust代码中隐藏的问题
该文演示了如何通过Clippy的cast_lossless警告发现隐藏的Bug
1
共 0 条评论, 1 页
评论区
写评论还没有评论