d中的pod定义

1,自身不嵌套.
2,无后复制,析构器,赋值操作符
3,无引用字段及非pod字段.

extern(C++) {
    struct Foo {
        void[32] _;
    }

    struct Bar {
        this(Foo foo);
    }
}


void oops() {
    auto foo = Foo();
    auto bar = Bar(foo);
}
//下面是等价的c++
struct Foo {
    char _[32];
};

struct Bar {
    Bar(Foo foo);
};

void oops() {
    auto foo = Foo();
    auto bar = Bar(foo);
}
posted @ 2020-09-07 14:24  zjh6  阅读(13)  评论(0)    收藏  举报  来源