< 返回版块

Snowmanzzz 发表于 2023-02-11 09:17

评论区

写评论
lithbitren 2023-02-14 15:34

对,任务管理器里面只有rust_analyser是cpu是高的,代码这边程序一复杂,类型推断就开始闪烁,也可能是因为这个cpu起飞的,总之关了插件就好了,大多数情况下也不需要提示类型了。

--
👇
Snowmanzzz: vs插件吗?

--
👇
lithbitren: 话说一开rust_analyser我cpu就起飞,找了半天没找到解决办法,关了好长一阵了。

作者 Snowmanzzz 2023-02-13 15:32

vs插件吗?

--
👇
lithbitren: 话说一开rust_analyser我cpu就起飞,找了半天没找到解决办法,关了好长一阵了。

lithbitren 2023-02-11 17:47

话说一开rust_analyser我cpu就起飞,找了半天没找到解决办法,关了好长一阵了。

github.com/shanliu/lsys 2023-02-11 13:02

引用跟所有权不是一码事

--
👇
hax10: 恩,毕竟Rust最重要的特点就是能够把内存管理的一些问题甩给编译器。

不过,我再看了一遍我写的”引用也包含所有权信息“,这句话不太恰当。更确切地说,Rust会允许非所有者通过引用去读或写某一块数据,但是引用本身不会记录所有者的信息,它只不过在Rust所有权机制的管下能起到一定内存保护作用,这跟C/C++的指针不同。

--
👇
Snowmanzzz: > 引用也包含所有权

那需要照顾的东西岂不是很多 一不小心 所有权改变了岂不是糟糕了

hax10 2023-02-11 11:21

恩,毕竟Rust最重要的特点就是能够把内存管理的一些问题甩给编译器。

不过,我再看了一遍我写的”引用也包含所有权信息“,这句话不太恰当。更确切地说,Rust会允许非所有者通过引用去读或写某一块数据,但是引用本身不会记录所有者的信息,它只不过在Rust所有权机制的管下能起到一定内存保护作用,这跟C/C++的指针不同。

--
👇
Snowmanzzz: > 引用也包含所有权

那需要照顾的东西岂不是很多 一不小心 所有权改变了岂不是糟糕了

作者 Snowmanzzz 2023-02-11 11:01

引用也包含所有权

那需要照顾的东西岂不是很多 一不小心 所有权改变了岂不是糟糕了

--
👇
hax10: 是的,重复的与号(&)表示一种引用链条,比如&&&str是&&str的引用,&&&&str是&&&str的引用,以此类推。

要注意,Rust引用不完全等同于C/C++里的指针概念,因为引用也包含所有权信息。另外,引用不能指空值,我们又不能在引用基础上进行指针算术。

还有,&str不是普通的引用,而是slice切片。切片是一种特殊引用,它指的是某字符向量的一部分,所以比普通引用多一些长度信息。

作者 Snowmanzzz 2023-02-11 10:58

@mike tang 可惜不能关注你hhh

--
👇
hax10: 是的,重复的与号(&)表示一种引用链条,比如&&&str是&&str的引用,&&&&str是&&&str的引用,以此类推。

要注意,Rust引用不完全等同于C/C++里的指针概念,因为引用也包含所有权信息。另外,引用不能指空值,我们又不能在引用基础上进行指针算术。

还有,&str不是普通的引用,而是slice切片。切片是一种特殊引用,它指的是某字符向量的一部分,所以比普通引用多一些长度信息。

hax10 2023-02-11 10:14

是的,重复的与号(&)表示一种引用链条,比如&&&str是&&str的引用,&&&&str是&&&str的引用,以此类推。

要注意,Rust引用不完全等同于C/C++里的指针概念,因为引用也包含所有权信息。另外,引用不能指空值,我们又不能在引用基础上进行指针算术。

还有,&str不是普通的引用,而是slice切片。切片是一种特殊引用,它指的是某字符向量的一部分,所以比普通引用多一些长度信息。

1 共 8 条评论, 1 页