nlib
nn::nlib::ReallocCstringVec クラス

C文字列のベクタをreallocベースで実装しています。 [詳解]

#include "nn/nlib/ReallocVec.h"

公開メンバ関数

 ReallocCstringVec () noexcept
 デフォルトコンストラクタで、std::reallocを利用します。
 
 ReallocCstringVec (ReallocFunc func) noexcept
 コンストラクタで、realloc関数をユーザーが指定できます。 [詳解]
 
ReallocFunc GetRealloc () const noexcept
 指定したrealloc関数を取得します。 [詳解]
 
bool push_back (const char *str) noexcept
 C文字列を末尾に追加します。 [詳解]
 
bool push_back (const char *startCharPtr, const char *endCharPtr) noexcept
 (部分)文字列を末尾に追加します。 [詳解]
 
bool pop_back () noexcept
 ベクタの末尾から文字列を削除します。 [詳解]
 
char * operator[] (size_t idx) noexcept
 idx番目の文字列を取得します。 [詳解]
 
char * front () noexcept
 最初の文字列を取得します。 [詳解]
 
char * back () noexcept
 最後の文字列を取得します。 [詳解]
 
void swap (ReallocCstringVec &rhs) noexcept
 ベクタを交換する [詳解]
 
size_t size () const noexcept
 ベクタのサイズを取得する [詳解]
 
size_t capacity () const noexcept
 ベクタの拡張をせずに格納できる最大の要素数を取得する [詳解]
 
bool empty () const noexcept
 ベクタが空かどうかを判定する [詳解]
 
bool reserve (size_t n) noexcept
 n 個の要素までをベクタの拡張をせずに格納できるようにする。 [詳解]
 

詳解

C文字列のベクタをreallocベースで実装しています。

ReallocVec.h214 行目に定義があります。

構築子と解体子

nn::nlib::ReallocCstringVec::ReallocCstringVec ( ReallocFunc  func)
inlineexplicitnoexcept

コンストラクタで、realloc関数をユーザーが指定できます。

引数
[in]funcrealloc関数

ReallocVec.h220 行目に定義があります。

関数詳解

nn::nlib::ReallocCstringVec::back ( )
inlinenoexcept

最後の文字列を取得します。

戻り値
最後の文字列

ReallocVec.h249 行目に定義があります。

nn::nlib::ReallocCstringVec::capacity ( ) const
inlinenoexcept

ベクタの拡張をせずに格納できる最大の要素数を取得する

戻り値
要素数
説明
文字列自体については、追加の際にメモリが確保されることに注意してください。

ReallocVec.h253 行目に定義があります。

nn::nlib::ReallocCstringVec::empty ( ) const
inlinenoexcept

ベクタが空かどうかを判定する

戻り値
trueならば空

ReallocVec.h254 行目に定義があります。

nn::nlib::ReallocCstringVec::front ( )
inlinenoexcept

最初の文字列を取得します。

戻り値
最初の文字列

ReallocVec.h247 行目に定義があります。

nn::nlib::ReallocCstringVec::GetRealloc ( ) const
inlinenoexcept

指定したrealloc関数を取得します。

戻り値
realloc関数

ReallocVec.h223 行目に定義があります。

nn::nlib::ReallocCstringVec::operator[] ( size_t  idx)
inlinenoexcept

idx番目の文字列を取得します。

引数
[in]idxインデックス
戻り値
idx番目の文字列

ReallocVec.h243 行目に定義があります。

nn::nlib::ReallocCstringVec::pop_back ( )
inlinenoexcept

ベクタの末尾から文字列を削除します。

戻り値
成功した場合はtrue
説明
削除される文字列の領域は解放されます。

ReallocVec.h237 行目に定義があります。

nn::nlib::ReallocCstringVec::push_back ( const char *  str)
inlinenoexcept

C文字列を末尾に追加します。

引数
[in]strC文字列
戻り値
成功した場合はtrue
説明
文字列は内部で複製されベクタに追加されます。

ReallocVec.h224 行目に定義があります。

nn::nlib::ReallocCstringVec::push_back ( const char *  startCharPtr,
const char *  endCharPtr 
)
inlinenoexcept

(部分)文字列を末尾に追加します。

引数
[in]startCharPtr最初の文字へのポインタ
[in]endCharPtr最後の文字の次へのポインタ
戻り値
成功した場合はtrue
説明
文字列は内部で複製されヌル文字を加えられてベクタに追加されます。

ReallocVec.h227 行目に定義があります。

nn::nlib::ReallocCstringVec::reserve ( size_t  n)
inlinenoexcept

n 個の要素までをベクタの拡張をせずに格納できるようにする。

引数
[in]n要素数
戻り値
成功した場合はtrue
説明
文字列自体については、追加の際にメモリが確保されることに注意してください。

ReallocVec.h255 行目に定義があります。

nn::nlib::ReallocCstringVec::size ( ) const
inlinenoexcept

ベクタのサイズを取得する

戻り値
ベクタのサイズ

ReallocVec.h252 行目に定義があります。

nn::nlib::ReallocCstringVec::swap ( ReallocCstringVec rhs)
inlinenoexcept

ベクタを交換する

引数
[in]rhs交換対象のベクタ

ReallocVec.h251 行目に定義があります。


このクラス詳解は次のファイルから抽出されました: