结构体
structs.md
commit: 9d0aa172932ed15ec1b13556e6809b74bc58a02b
本章译文最后维护日期:2021-1-17
句法
Struct :
StructStruct
| TupleStructStructStruct :
struct
IDENTIFIER GenericParams? WhereClause? ({
StructFields?}
|;
)TupleStruct :
struct
IDENTIFIER GenericParams?(
TupleFields?)
WhereClause?;
StructFields :
StructField (,
StructField)*,
?StructField :
OuterAttribute*
Visibility?
IDENTIFIER:
TypeTupleFields :
TupleField (,
TupleField)*,
?TupleField :
OuterAttribute*
Visibility?
Type
结构体是一个使用关键字 struct
定义的标称型(nominal)结构体类型。
结构体(struct
)程序项的一个示例和它的使用方法:
元组结构体是一个标称型(nominal)元组类型,也是用关键字 struct
定义的。例如:
*单元结构体(unit-like struct)*是没有任何字段的结构体,它的定义完全不包含字段(fields)列表。这样的结构体隐式定义了其类型的同名常量(值)。例如:
等价于
结构体的精确内存布局还没有规范下来。目前可以使用 repr
属性来指定特定的布局。