- デフォルトコンストラクタ
( TD::String_var() / TD::WString_var() )
_ptrをNULLに初期化します。
(使用例)
TD::String_var data;
TD::WString_var data;
char *(CORBA::WChar *)コンストラクタ
(TD::String_var( char * ) / TD::WString_var( CORBA::WChar * ) , TD::String_var( const char * ) / TD::WString_var( const CORBA::WChar * ) )
char*(CORBA::WChar *)コンストラクタはconstなしとconstありが定義されます。constなしの場合は、指定されたパラメタを_ptrに設定します。constありの場合は、指定されたパラメタのコピーを_ptrに設定します。
(使用例)
CORBA::Char *str1 = TD::string_alloc(5);
strcpy(str1,"test");
CORBA::WChar *str2 = TD::wstring_alloc(5);
wcscpy(str2,"あいうえ");
// char*(CORBA::WChar *)コンストラクタ(constなし)
TD::String_var data1(str1 );
TD::WString_var data2(str2 );
// char*(CORBA::WChar *)コンストラクタ(constあり)
TD::String_var, TD::WString_var data1( (const CORBA::Char *)str1 );
TD::WString_var data2( (const CORBA::WChar *)str2 );
- コピーコンストラクタ
( TD::String_var ( const TD::String_var & ) / TD::WString_var ( const TD::WString_var & ) )
指定されたパラメタのpに設定されているデータ自身を_ptrに複写します。
(使用例)
CORBA::Char *str1 = TD::string_alloc(5);
strcpy(str1,"test");
CORBA::WChar *str2 = TD::wstring_alloc(5);
wcscpy(str2,"あいうえ");
// char*(CORBA::WChar *)コンストラクタ(constなし)
TD::String_var data1(str1 );
TD::WString_var data2(str2 );
// コピーコンストラクタ
TD::String_var data12(data1 );
TD::WString_var data22(data2 );
- デストラクタ
( TD::String_var() / TD::WString_var() )
_ptrに設定されているデータの解放を行います。
(使用例)
CORBA::Char *str = TD::string_alloc(5);
strcpy(str1,"test");
CORBA::WChar *str = TD::wstring_alloc(5);
wcscpy(str2,"あいうえ");
// char*(CORBA::WChar *)コンストラクタ(constなし)
TD::String_var *data1 =new TD::WString_var(str1 );
TD::WString_var *data2 =new TD::WString_var(str2 );
// デストラクタが起動され_ptr(この例ではstrの指す領域)が解放される
delete data1;
delete data2;
- char *(CORBA::WChar *)代入演算子
( TD::String_var &operator= ( char * ) / TD::WString_var &operator= ( CORBA::WChar * ) , TD::String_var ( const char * ) / TD::WString_var &operator= ( const CORBA::WChar * ))
char *(CORBA::WChar *)代入演算子は、constなしとconstありが定義されます。constなしの場合は、右辺で指定された(CORBA::WChar *) *ポインタを_ptrに代入します。constありの場合は、右辺で指定されたchar *(CORBA::WChar *)ポインタの指すデータのコピーを作成し、そのポインタを_ptrに設定します。
ptrにデータが設定されている場合は、constなし、constありいずれも、設定されている_ptrのデータを解放したあとで、それぞれの処理を実行します。
(使用例)
CORBA::Char *str1 =TD::string_alloc(5);
strcpy(str1,"test");
TD::String_var data1;
CORBA::WChar *str2 =TD::string_alloc(5);
wcscpy(str2,"あいうえ");
TD::WString_var data2;
// char*(CORBA::WChar *)代入演算子(constなし)
data1 =str1;
data2 =str2;
// char *(CORBA::WChar *)代入演算子(constあり)
data1 =(const CORBA::Char *)"new data1";
data2 =(const CORBA::WChar *)"new data2";
- 代入演算子
( TD::String_var & operator=( const TD::String_var & ) / TD::WString_var & operator=( const TD::WString_var & ) )
代入演算子は、右辺で指定されたTD::String_var, TD::WString_varクラスの_ptrの設定されているデータのコピーを作成し、_ptrに設定します。すでに_ptrにデータが設定されている場合には、そのデータを解放したあと、処理を行います。
(使用例)
CORBA::Char *str1 = TD::string_alloc(5);
strcpy(str1,"test");
TD::String_var data1;
CORBA::WChar *str2 = TD::wstring_alloc(5);
wcscpy(str2,"あいうえ");
TD::WString_var data2;
// char*(CORBA::WChar *)代入演算子(constなし)
data1 = str1;
TD::String_var data12;
data2 = str2;
TD::WString_var data22;
// 代入演算子
data12 = data1;
data22 = data2;
- 交換演算子
( operator char*()/operator const CORBA::WChar*() const , operator char*()/operator const CORBA::WChar*() const )
- []演算子
( char &operator[]( ULong )/CORBA::WChar operator[]( ULong ) const , char &operator[]( ULong ) / CORBA::WChar operator[]( ULong ) const )
[]演算子は、_ptrに設定されているパラメタで指定されたデータ+1番目のデータの参照値を返します。
(使用例)
CORBA::Char *str1 = TD::string_alloc(5);
strcpy(str1,"test");
TD::String_var data1;
CORBA::WChar *str2 = TD::wstring_alloc(5);
wcscpy(str2,"あいうえ");
TD::WString_var data2;
// char*(CORBA::WChar *)代入演算子(constなし)
data1 = str1;
data2 = str2;
// []演算子3文字目's'が返る
CORBA::Char x = data1[2];
// []演算子3文字目'う'が返る
CORBA::WChar x = data2[2];