【问题标题】:Can there be more than one struct member per line?每行可以有多个结构成员吗?
【发布时间】:2020-09-12 12:56:53
【问题描述】:

每行我可以有多个struct 成员吗?

我正在制作一个结构。似乎 V 每行只强制一个成员。 我不记得在任何地方看到过。

trial.v:191:2: error: unknown type `` 
  189 |     fsize    int
  190 |     vers     int
  191 |     x,y,z    i16
      |     ~~
  192 |     c    int

【问题讨论】:

    标签: vlang


    【解决方案1】:

    是的,结构体的声明不能使用逗号,但是可以用于初始化:

    struct Xyz { x int y int z f32 }
    fn main() {
        s := Xyz{ x: 11, y: 20, z: 3.14 }
        println(s.x)
    }
    

    顺便说一句,V 中结构的名称需要以大写开头,并且长度至少为 3 个字符。

    【讨论】:

      【解决方案2】:

      您似乎不能在字段声明中使用逗号快捷方式。例如,以下工作:

      struct S { x int y int z f32 }
      
      fn main() {
          s := S { x: 10 y: 20 z: 3.14 }
      } 
      

      【讨论】:

        猜你喜欢
        • 2014-08-03
        • 2020-11-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-16
        • 1970-01-01
        相关资源
        最近更新 更多