メインページ | ネームスペース一覧 | クラス階層 | 構成 | ファイル一覧 | ネームスペースメンバ | 構成メンバ | ファイルメンバ | 関連ページ

クラス テンプレートgslib::static_container::string< MaxStrLen, Ch, ChTraits >

ただの配列なので、バイナリファイルへの埋め込みも簡単。 与えられた文字列が最大文字数を超えた場合、クランプされる。 [詳細]

#include <string.h>

gslib::static_container::string< MaxStrLen, Ch, ChTraits >のコラボレーション図

Collaboration graph
[凡例]
すべてのメンバ一覧

Public 型

typedef Ch char_type
typedef ChTraits traits_type
typedef pointer iterator
typedef const_pointer const_iterator

Public メソッド

 BOOST_STATIC_CONSTANT (size_type, npos=-1)
 最大サイズ

 BOOST_STATIC_CONSTANT (size_type, const_max=MaxStrLen)
size_type size () const
 サイズ取得

size_type length () const
 サイズ取得

iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
char_typeoperator[] (size_type i)
const char_typeoperator[] (size_type i) const
bool empty () const
reference at (size_type i)
char_type at (size_type i) const
reference front ()
char_type front () const
reference back ()
char_type back () const
void push_back (char_type ch)
 一文字追加

void append (char_type ch)
 一文字追加

void append (const char *str)
 文字列を末尾に追加

template<size_type OtherMaxStrLen> void append (const string< OtherMaxStrLen, Ch, ChTraits > &other)
 文字列を末尾に追加

void pop_back ()
 一文字削除

 string ()
 デフォルトコンストラクタ

template<size_type OtherMaxStrLen>  string (const string< OtherMaxStrLen, Ch, ChTraits > &other)
 コピーコンストラクタ

 string (const char_type *s)
 ~string ()
stringoperator= (const string &other)
 代入演算子

stringoperator= (const char_type *s)
pointer data ()
 直アクセス

const_pointer data () const
const_pointer c_str () const
string operator+= (const char *other)
 append() と同じです

template<size_type OtherMaxStrLen> string operator+= (const string< OtherMaxStrLen, Ch, ChTraits > &other)
 append() と同じです

void clear ()
 空文字列化


Static Public メソッド

size_type max_size ()
 最大サイズ取得

size_type capaciry ()
 容量取得


Private 変数

Ch buffer_ [MaxStrLen+1]

フレンド

template<size_type OtherMaxStrLen> bool operator== (const string &a, const string< OtherMaxStrLen, Ch, ChTraits > &b)
 等しい?

bool operator== (const string &a, const char *b)
 等しい?

bool operator== (const char *a, const string &b)
 等しい?

template<size_type OtherMaxStrLen> bool operator!= (const string &a, const string< OtherMaxStrLen, Ch, ChTraits > &b)
 異なる?

bool operator!= (const string &a, const char *b)
 異なる?

bool operator!= (const char *a, const string &b)
 異なる?

template<size_type OtherMaxStrLen> bool operator< (const string &a, const string< OtherMaxStrLen, Ch, ChTraits > &b)
 辞書順比較

bool operator< (const string &a, const char *b)
 辞書順比較

bool operator< (const char *a, const string &b)
 辞書順比較


説明

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
class gslib::static_container::string< MaxStrLen, Ch, ChTraits >

ただの配列なので、バイナリファイルへの埋め込みも簡単。 与えられた文字列が最大文字数を超えた場合、クランプされる。

内部的には、Ch[ MaxStrLen + 1 ] のみを利用する。

string.h73 行で定義されています。


型定義

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
typedef Ch gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type
 

string.h76 行で定義されています。

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::at(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::back(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::clear(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::front(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator=(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator[](), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::pop_back(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::push_back(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::string().

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
typedef const_pointer gslib::static_container::string< MaxStrLen, Ch, ChTraits >::const_iterator
 

string.h79 行で定義されています。

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
typedef pointer gslib::static_container::string< MaxStrLen, Ch, ChTraits >::iterator
 

string.h78 行で定義されています。

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
typedef ChTraits gslib::static_container::string< MaxStrLen, Ch, ChTraits >::traits_type
 

string.h77 行で定義されています。


コンストラクタとデストラクタ

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
gslib::static_container::string< MaxStrLen, Ch, ChTraits >::string  )  [inline]
 

デフォルトコンストラクタ

string.h167 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::clear().

00167                      {
00168                 clear();
00169             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
template<size_type OtherMaxStrLen>
gslib::static_container::string< MaxStrLen, Ch, ChTraits >::string const string< OtherMaxStrLen, Ch, ChTraits > &  other  )  [inline]
 

コピーコンストラクタ

string.h173 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::max_size(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

00173                                                                           {
00174                 if ( buffer_ != other.begin() ) {
00175                     size_type otherLen = other.size();
00176                     if ( otherLen <= max_size() ) {
00177                         traits_type::copy( buffer_, other.begin(), otherLen + 1 );
00178                     } else {
00179                         traits_type::copy( buffer_, other.begin(), max_size() + 1 );
00180                     }
00181                 }
00182             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
gslib::static_container::string< MaxStrLen, Ch, ChTraits >::string const char_type s  )  [inline]
 

string.h184 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::max_size().

00184                                          {
00185                 if ( s != buffer_ ) {
00186                     size_type otherLen = traits_type::length( s );
00187                     if ( otherLen <= max_size() ) {
00188                         traits_type::copy( buffer_, s, otherLen + 1 );
00189                     } else {
00190                         traits_type::copy( buffer_, s, max_size() + 1 );
00191                     }
00192                 }
00193             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
gslib::static_container::string< MaxStrLen, Ch, ChTraits >::~string  )  [inline]
 

string.h196 行で定義されています。

00196                       {
00197             }


関数

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
template<size_type OtherMaxStrLen>
void gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append const string< OtherMaxStrLen, Ch, ChTraits > &  other  )  [inline]
 

文字列を末尾に追加

string.h154 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::c_str().

00154                                                                                {
00155                 append( other.c_str() );
00156             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
void gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append const char *  str  )  [inline]
 

文字列を末尾に追加

string.h140 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::max_size(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

00140                                            {
00141                 if ( 0 == str ) {
00142                     return;
00143                 }
00144                 if ( size() + traits_type::length( str ) <= max_size() ) {
00145                     traits_type::copy( end(), str, traits_type::length( str ) + 1 );
00146                 } else {
00147                     traits_type::copy( end(), str, max_size() );
00148                     buffer_[ MaxStrLen ] = char_type();
00149                 }
00150             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
void gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append char_type  ch  )  [inline]
 

一文字追加

string.h135 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::push_back().

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator+=(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator=().

00135                                         {
00136                 push_back( ch );
00137             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
char_type gslib::static_container::string< MaxStrLen, Ch, ChTraits >::at size_type  i  )  const [inline]
 

string.h116 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator[]().

00116 { return operator [] ( i ); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
reference gslib::static_container::string< MaxStrLen, Ch, ChTraits >::at size_type  i  )  [inline]
 

string.h115 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator[]().

00115 { return operator [] ( i ); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
char_type gslib::static_container::string< MaxStrLen, Ch, ChTraits >::back  )  const [inline]
 

string.h121 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end().

00121 { return *( end() - 1 ); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
reference gslib::static_container::string< MaxStrLen, Ch, ChTraits >::back  )  [inline]
 

string.h120 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end().

00120 { return *( end() - 1 ); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
const_iterator gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin  )  const [inline]
 

string.h100 行で定義されています。

00100 { return buffer_; }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
iterator gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin  )  [inline]
 

string.h99 行で定義されています。

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::c_str(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::data(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::front(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator[](), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::string().

00099 { return buffer_; }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
gslib::static_container::string< MaxStrLen, Ch, ChTraits >::BOOST_STATIC_CONSTANT size_type  ,
const_max  = MaxStrLen
 

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
gslib::static_container::string< MaxStrLen, Ch, ChTraits >::BOOST_STATIC_CONSTANT size_type  ,
npos  = -1
 

最大サイズ

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
const_pointer gslib::static_container::string< MaxStrLen, Ch, ChTraits >::c_str  )  const [inline]
 

string.h214 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin().

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator=().

00214 { return begin(); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
size_type gslib::static_container::string< MaxStrLen, Ch, ChTraits >::capaciry  )  [inline, static]
 

容量取得

string.h91 行で定義されています。

00091 { return const_max; }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
void gslib::static_container::string< MaxStrLen, Ch, ChTraits >::clear  )  [inline]
 

空文字列化

string.h230 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type.

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator=(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::string().

00230                          {
00231                 buffer_[ 0 ] = char_type();
00232             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
const_pointer gslib::static_container::string< MaxStrLen, Ch, ChTraits >::data  )  const [inline]
 

string.h213 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin().

00213 { return begin(); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
pointer gslib::static_container::string< MaxStrLen, Ch, ChTraits >::data  )  [inline]
 

直アクセス

string.h212 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin().

00212 { return begin(); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
bool gslib::static_container::string< MaxStrLen, Ch, ChTraits >::empty  )  const [inline]
 

string.h112 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::pop_back().

00112                                {
00113                 return 0 == size();
00114             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
const_iterator gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end  )  const [inline]
 

string.h102 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

00102 { return begin() + size(); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
iterator gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end  )  [inline]
 

string.h101 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::back(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::pop_back(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::push_back().

00101 { return begin() + size(); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
char_type gslib::static_container::string< MaxStrLen, Ch, ChTraits >::front  )  const [inline]
 

string.h119 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type.

00119 { return *begin(); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
reference gslib::static_container::string< MaxStrLen, Ch, ChTraits >::front  )  [inline]
 

string.h118 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin().

00118 { return *begin(); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
size_type gslib::static_container::string< MaxStrLen, Ch, ChTraits >::length  )  const [inline]
 

サイズ取得

string.h97 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

00097 { return size(); }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
size_type gslib::static_container::string< MaxStrLen, Ch, ChTraits >::max_size  )  [inline, static]
 

最大サイズ取得

string.h88 行で定義されています。

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::string().

00088 { return const_max; }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
template<size_type OtherMaxStrLen>
string gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator+= const string< OtherMaxStrLen, Ch, ChTraits > &  other  )  [inline]
 

append() と同じです

string.h224 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append().

00224                                                                                        {
00225                 append( other );
00226                 return *this;
00227             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
string gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator+= const char *  other  )  [inline]
 

append() と同じです

string.h217 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append().

00217                                                      {
00218                 append( other );
00219                 return *this;
00220             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
string& gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator= const char_type s  )  [inline]
 

string.h203 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::clear().

00203                                                       {
00204                 if ( s != buffer_ ) {
00205                     clear();
00206                     append( s );
00207                 }
00208                 return *this;
00209             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
string& gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator= const string< MaxStrLen, Ch, ChTraits > &  other  )  [inline]
 

代入演算子

string.h200 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::c_str().

00200                                                         {
00201                 return operator = ( other.c_str() );
00202             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
const char_type& gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator[] size_type  i  )  const [inline]
 

string.h108 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

00108                                                                {
00109                 PYD_ASSERT( i < size() );
00110                 return *( begin() + i );
00111             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
char_type& gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator[] size_type  i  )  [inline]
 

string.h104 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::begin(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::at().

00104                                                    {
00105                 PYD_ASSERT( i < size() );
00106                 return *( begin() + i );
00107             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
void gslib::static_container::string< MaxStrLen, Ch, ChTraits >::pop_back  )  [inline]
 

一文字削除

string.h159 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, gslib::static_container::string< MaxStrLen, Ch, ChTraits >::empty(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end().

00159                             {
00160                 BOOST_ASSERT( false == empty() );
00161                 iterator last = end();
00162                 --last;
00163                 *last = char_type();
00164             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
void gslib::static_container::string< MaxStrLen, Ch, ChTraits >::push_back char_type  ch  )  [inline]
 

一文字追加

string.h124 行で定義されています。

参照先 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::char_type, gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size().

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append().

00124                                            {
00125                 //BOOST_ASSERT;
00126                 if ( size() < MaxStrLen ) {
00127                     iterator last = end();
00128                     *last = ch;
00129                     ++last;
00130                     *last = char_type();
00131                 }
00132             }

関数の呼び出しグラフ:

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
size_type gslib::static_container::string< MaxStrLen, Ch, ChTraits >::size  )  const [inline]
 

サイズ取得

string.h94 行で定義されています。

参照元 gslib::static_container::string< MaxStrLen, Ch, ChTraits >::append(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::empty(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::end(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::length(), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::operator[](), gslib::static_container::string< MaxStrLen, Ch, ChTraits >::push_back(), と gslib::static_container::string< MaxStrLen, Ch, ChTraits >::string().

00094 { return traits_type::length( buffer_ ); }


フレンドと関連する関数

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
bool operator!= const char *  a,
const string< MaxStrLen, Ch, ChTraits > &  b
[friend]
 

異なる?

string.h264 行で定義されています。

00264                                                                        {
00265                 return !operator == ( a, b );
00266             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
bool operator!= const string< MaxStrLen, Ch, ChTraits > &  a,
const char *  b
[friend]
 

異なる?

string.h259 行で定義されています。

00259                                                                        {
00260                 return !operator == ( a, b );
00261             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
template<size_type OtherMaxStrLen>
bool operator!= const string< MaxStrLen, Ch, ChTraits > &  a,
const string< OtherMaxStrLen, Ch, ChTraits > &  b
[friend]
 

異なる?

string.h254 行で定義されています。

00254                                                                                                          {
00255                 return !operator == ( a, b );
00256             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
bool operator< const char *  a,
const string< MaxStrLen, Ch, ChTraits > &  b
[friend]
 

辞書順比較

string.h283 行で定義されています。

00283                                                                       {
00284                 return operator < ( b, a );
00285             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
bool operator< const string< MaxStrLen, Ch, ChTraits > &  a,
const char *  b
[friend]
 

辞書順比較

string.h275 行で定義されています。

00275                                                                       {
00276                 return std::lexicographical_compare(
00277                     a.begin(), a.end(),
00278                     b, b + traits_type::length( b ),
00279                     traits_type::eq_int_type );
00280             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
template<size_type OtherMaxStrLen>
bool operator< const string< MaxStrLen, Ch, ChTraits > &  a,
const string< OtherMaxStrLen, Ch, ChTraits > &  b
[friend]
 

辞書順比較

string.h270 行で定義されています。

00270                                                                                                         {
00271                 return operator < ( a, b.c_str() );
00272             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
bool operator== const char *  a,
const string< MaxStrLen, Ch, ChTraits > &  b
[friend]
 

等しい?

string.h248 行で定義されています。

00248                                                                        {
00249                 return operator == ( b, a );
00250             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
bool operator== const string< MaxStrLen, Ch, ChTraits > &  a,
const char *  b
[friend]
 

等しい?

string.h241 行で定義されています。

00241                                                                        {
00242                 size_type size = a.size();
00243                 return char_type() == b[ size ] &&
00244                     std::equal( a.begin(), a.begin() + size, b, traits_type::eq );
00245             }

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
template<size_type OtherMaxStrLen>
bool operator== const string< MaxStrLen, Ch, ChTraits > &  a,
const string< OtherMaxStrLen, Ch, ChTraits > &  b
[friend]
 

等しい?

string.h236 行で定義されています。

00236                                                                                                          {
00237                 return operator == ( a, b.c_str() );
00238             }


変数

template<size_t MaxStrLen, typename Ch = char, typename ChTraits = std::char_traits< Ch >>
Ch gslib::static_container::string< MaxStrLen, Ch, ChTraits >::buffer_[ MaxStrLen + 1 ] [private]
 

string.h81 行で定義されています。


このクラスの説明は次のファイルから生成されました:
static_containerに対してSat Nov 27 15:03:36 2004に生成されました。 doxygen 1.3.6