代码之家  ›  专栏  ›  技术社区  ›  gavr

如何创建用默认值初始化的结构?

  •  0
  • gavr  · 技术社区  · 7 年前

    如何创建已经具有默认值的结构? 不知怎的,就像这样:

    struct First {
        int data = 4;
        int pos = 5;
        }
    
    void main () {
        var a = First ();
        assert(a.data == 4);
    }
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   gavr    7 年前

    AlThomas的回应:

    “Vala中的结构可以有初始值设定项(类似于类的构造函数)和方法。因此,我可以从第二个pastebin中提取什么,您可以将其写成:”

    struct First {
        int data;
        int pos;
    
        public First (int[] mass) {
            data= 5;
            pos = mass.length;
        }
    
        public int sas () {
            return data + pos;
        }
    }
    
    void main () {
        int[] a = {1,3,0,1,2,3,2,1};
        var b = First (a);
        print (@"$(b.sas ())\n");
    }