動機
MICO CORBAを用いて通信をする際に元々のライブラリで用いているクラスとの型変換をしなければならないため.
一覧
CORBA.hをインクルードしてあげる.
IDL | C++用ラッパー | 定義 |
---|---|---|
short | MICO_Short | CORBA::Short |
unsigned short | MICO_UShort | CORBA::UShort |
long | MICO_Long | CORBA::Long |
unsigned long | MICO_ULong | CORBA::ULong |
float | MICO_Float | CORBA::Float |
double | MICO_Double | CORBA::Double |
char | MICO_Char | CORBA::Char |
boolean | MICO_Boolean | CORBA::Boolean |
octet | MICO_Octet | CORBA::Octet |
string | (CORBA_string) | CORBA::String_var |
stringはなぜかCORBA_stringが使えなかったので,CORBA::String_varと直接呼んでやったら使えた.
あとsequence型は可変長.あらかじめ長さを指定することもできる.後からresizeする場合はlength関数を使う.
- IDL
sequence<long> numvec;
- C++
// 長さを調べる numvec.length(); // リサイズする ing size; numvec.length(size);