Interstage Application Server アプリケーション作成ガイド (コンポーネントトランザクションサービス編)
目次 索引 前ページ次ページ

第6章 C++言語の提供クラス

6.2 標準提供クラス

 アプリケーションでデータ操作等を行うためのメソッドを、TDではクラスとして標準提供します。これをTDクラスと呼びます。TDクラスは、インタフェースクラスの基本クラス(スーパークラス)となります。

class TD
{
public:
        class String_var
        {
        public:
                String_var();
                String_var( char * );
                String_var( const char * );
                String_var( const String_var & );
                ~String_var();

                String_var      &operator=( char * );
                String_var      &operator=( const char * );
                String_var      &operator=( const String_var & );

                operator        char*();
                operator        const   char*() const;

                char    &operator[]( CORBA::ULong );
                char    operator[]( CORBA::ULong )     const;

        private:
                char    *_ptr;
        };

       class   WString_var
       {
        public:
                WString_var();
                WString_var( CORBA::WChar * );
                WString_var( const CORBA::WChar * );
                WString_var( const WString_var & );
                ~WString_var();
                WString_var &operator=( CORBA::WChar * );
                WString_var &operator=( const CORBA::WChar * );
                WString_var &operator=( const WString_var & );

                operator    CORBA::WChar*();
                operator    const   CORBA::WChar*()    const;
                CORBA::WChar   &operator[]( CORBA::ULong );
                CORBA::WChar   operator[]( CORBA::ULong ) const;
                private:
                CORBA::WChar   *_ptr;
                };

        static void *string_alloc(unsinged long);
        static void *wstring_alloc(unsigned long);
        static void string_free(void *);
        static void wstring_free(void *);
};

 TDクラスは、以下のメンバで構成されています。


 各メンバの詳細を、以下に示します。


下へ6.2.1 String_var, WString_varクラス
下へ6.2.2 可変長データ領域獲得関数
下へ6.2.3 可変長データ領域解放関数

目次 索引 前ページ次ページ

All Rights Reserved, Copyright (C) 富士通株式会社 2005