生锈的嵌套结构

abe*_*ier 27 struct rust

当我试图宣布

struct Test {
    struct Foo {}
}
Run Code Online (Sandbox Code Playgroud)

__CODE__抱怨:__CODE__结构__CODE__.我无法在任何一个方向找到任何文档,因此嵌套结构甚至支持生锈?

Vla*_*eev 27

不,他们不受支持.你为什么认为他们是?您应该使用单独的struct声明和常规字段:

struct Foo {}

struct Test {
    foo: Foo,
}
Run Code Online (Sandbox Code Playgroud)

  • 嵌套结构例如便于结构的可见性.因此,生锈是少数几个不支持筑巢的类别之一. (8认同)
  • @abergmeier,Rust的可见性单位是一个模块.您应该使用精心构造的模块层次结构来约束结构和其他事物的可见性.还有AFAIR,您可以在函数内定义函数(这是确定的)和结构和特征(这需要验证). (7认同)