Corba IDL:结构成员的默认值

时间:2017-01-04 13:38:37

标签: c++ corba idl

是否可以在CORBA IDL中为struct成员定义默认值? 我们以下面的结构为例:

struct Example
{
    boolean test;
};

如果我将此IDL编译为C ++,则在创建对象后,变量“test”将被取消初始化。我希望它始终设置为false,直到它明确切换为true。

2 个答案:

答案 0 :(得分:1)

我使用omniORB和VisiBroker进行CORBA实现。这些idl编译器都不支持默认值结构。

答案 1 :(得分:0)

OMG IDL到C ++映射不默认初始化struct成员。正如您所提到的,IDL到C ++ 11映射确实为所有类型指定了默认值,包括所有基本类型。目前你有一个支持C ++ 11的编译器/操作系统,你应该可以使用IDL到C ++ 11映射,它不需要你在你的应用程序代码中使用C ++ 11。