rust一些笔记

#[cfg(bar)] :这个是条件编译的方式。



在rust里面你想查看某个变量的值,但你不知道他是什么属性或者包含哪些属性。

可以在你定义的struts上加上这行的注解。

#[derive(Debug)],然后通过println!("{:?}",你定义struts的变量名);进行输出。

如果是引入的模块crate定义的struts,就在extern crate  上一行加这个注释。

if it is defined in your crate, add `#[derive(Debug)]` or manually implement it

match value {

    ref val => println!("this is a ref value");

}

val 是value所产生出来的ref值。


rust闭包问题

如果闭包使用了外部变量a,相当于borrow了外部变量,并会一直持有该borrow直到该闭包的生命周期结束为止。ps:如果持有的mut borrow外部变量,意味着在该闭包生命周期的时间里,其他地方不能borrow a变量了。


如果闭包有mut 变量的话,那么闭包也一定是用mut修饰符。


 1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。 


你可能感兴趣的:(rust一些笔记)