Tools.h++ 7.0 クラスライブラリ・リファレンスマニュアル: RWCollectableString

バナーをクリックすれば目次に戻ります

Copyright 1999 Rogue Wave Software
Copyright 1999 Sun Microsystems, Inc.

## RWCollectableString

| RWCollectable
RWCollectableString |
| RWCString

### 形式

      typedef RWCollectableString String;  // Smalltalk typedef
      #include <rw/collstr.h>
      RWCollectableString  c;

### 説明

  コレクタブルな文字列。文字列を RWCollectable として格納したり取り出したりする場合、または文字列を "ディクショナリ" コレクションクラス内のキーとして使用する場合に有用なクラスです。クラス RWCString と RWCollectable の両方を継承します。基底クラス RWCollectable の仮想関数を再定義しています。

### 持続性

  多相

### 公開コンストラクタ

      RWCollectableString();

    空の RWCollectableString を作成します。

      RWCollectableString(const RWCString& s);

    RWCString `s` から RWCollectableString を作成します。

      RWCollectableString(const char* c);

    文字列を変換します。

      RWCollectableString(const RWCSubString&);

    部分文字列を変換します。

      RWCollectableString(char c, size_t N);

    `N` 個の文字 (デフォルトは空白) で RWCollectableString を作成します。

### 公開メンバー関数

      virtual RWspace
      binaryStoreSize() const;

    クラス RWCollectable から再定義した関数。

      virtual int
      compareTo(const RWCollectable* c) const;

    クラス RWCollectable から再定義した関数。`RWCString::compareTo(*(const String*)c, RWCString::exact)` の結果を返します。これは、大文字と小文字を区別して辞書式順序で文字列を比較します。別の方法として、大文字と小文字を区別しない `CaseFoldedString` を定義することも考えられます。これを次の 2 つの理由から、このようにはしませんでした。1 つには、これは作成が簡単で、広く必要とされるものではないということです。もう 1 つには、ソートされたコレクションの場合どのような種類であれ、その中に RWCollectableString と `CaseFoldedString` が両方存在すると動作が混乱する可能性があることです。これは、比較の結果が、比較が実行された順序に依存するからです。

      virtual unsigned
      hash() const;

    クラス RWCollectable から再定義した関数。`RWCString::hash()` を呼び出して、その結果を返します。

      virtual RWClassID
      isA() const;

    クラス RWCollectable から再定義した関数で、`__RWCOLLECTABLESTRING` を返します。

      virtual RWBoolean
      isEqual(const RWCollectable* c) const;

    クラス RWCollectable から再定義した関数。`c` を引数として `RWCString::operator==()` (等値演算子) を呼び出し、その結果を返します。

      virtual void
      restoreGuts(RWvistream&);
      virtual void
      restoreGuts(RWFile&);
      virtual void
      saveGuts(RWvostream&) const;
      virtual void
      saveGuts(RWFile&) const;

    クラス RWCollectable から再定義した関数。

      RWStringID
      stringID();

    (仮想関数として動作) クラス RWCollectable から継承した関数。