[rust! #003] markers
在rust中, 可以根据类型(Type) 的固有属性来将它们分类, 这些分类就表现为 特性
(trait). 有一些 trait 和 struct 是用来表明类型的某些基本属性的. 例如:
Send
可以在线程之间传递.
Sized
在编译时的大小为常量.
Unsize
可以被转化为动态大小(使用?Sized
).
Copy
可以通过简单地拷贝数据(bits)来复制. 是Clone
的子集. 对String
的Copy
只会复制指针, 所以String
是Clone
的而非Copy
的.
Sync
它的引用(references
)可以在线程之间安全共享.
Freeze
编译器内部特性, 用于判断 type 中是否有 UnsafeCell
.
PhantomData<T>
(struct)
大小为零的类型, 可以使事物的行为变得像它们拥有了类型为 T 的数据一样.
相关推荐
chensen 2020-11-14
lwnylslwnyls 2020-11-06
ATenhong 2020-10-15
yanzhelee 2020-10-13
佛系程序员J 2020-10-10
guojin0 2020-10-08
佛系程序员J 2020-10-08
bluewelkin 2020-09-16
wwzaqw 2020-09-04
zhongdaowendao 2020-09-02
favouriter 2020-08-18
奎因amp华洛 2020-08-15
一青年 2020-08-13
千锋 2020-08-10
nangongyanya 2020-08-09
dongxurr 2020-08-08
明天你好 2020-08-03
kyelu 2020-08-03
Ashes 2020-08-03