0

我有一个 Bond 模式(理想情况下)会有一些继承的字段:

struct Context
{
    10: required string thing;
    20: required string otherthing;
};

struct SampleEvent : Context
{
    20: required wstring evt;
};

当我创建派生对象(SampleEvent)时,我可以这样做:

        SampleEvent evt = new SampleEvent { evt = str };

但是我在哪里可以设置Context字段的初始化?

4

1 回答 1

1

基类的字段是继承的,可以像派生类的字段一样设置:

var evt = new SampleEvent {
    evt = str,
    thing = "thing1",
    otherthing = "thing2"
};

如果您想在一个集中的地方执行此操作,我会编写一个辅助方法。生成的代码是部分的,因此您可以使用该功能向生成的类添加方法。您还可以使用扩展方法,或作为实例工厂的普通旧助手静态方法。

于 2018-05-14T19:26:55.657 回答