構造体

そういえば触ってなかったな、と思ったので触ってみる。

import std.c.stdio;

struct Hoge{
    int x, y, z;
}

void main(){
    Hoge hoge;
    with (hoge){
        x = 5;
        y = 4;
        z = x;
        printf("%d %d %d\n", x, y, z);
    }

    Hoge* hige = new Hoge;
    with (*hige){
        x = 5;
        y = 4;
        z = x;
        printf("%d %d %d\n", x, y, z);
    }
}
5 4 5
5 4 5

ヒープ上におこうとするとアスタリスク祭になる…わっしょいわっしょい。
withも使える。わざわざhoge.xとか書かなくて良いので助かるなあ。