nlib
nn::nlib::ReallocQueue< T > クラステンプレート

PODを要素に持つキューをreallocベースで実装しています。 [詳解]

#include "nn/nlib/ReallocVec.h"

公開型

typedef ReallocVec< T >::ReallocFunc ReallocFunc
 reallocに相当する関数の型です。
 

公開メンバ関数

 ReallocQueue () noexcept
 デフォルトコンストラクタで、std::reallocを利用します。
 
 ReallocQueue (ReallocFunc func) noexcept
 コンストラクタで、realloc関数をユーザーが指定できます。 [詳解]
 
ReallocFunc GetRealloc () const noexcept
 指定したrealloc関数を取得します。 [詳解]
 
size_t size () const noexcept
 キューのサイズを取得する [詳解]
 
bool empty () const noexcept
 キューが空かどうかを判定する [詳解]
 
bool push (const T &val) noexcept
 キューに要素を追加する。 [詳解]
 
bool pop () noexcept
 キューの先頭要素を削除する。 [詳解]
 
T & front ()
 キューの先頭要素を取得する。 [詳解]
 
bool pop (T *v) noexcept
 キューの先頭要素を取得し、その後削除する。 [詳解]
 
void swap (ReallocQueue &rhs) noexcept
 キューを交換する [詳解]
 

詳解

template<class T>
class nn::nlib::ReallocQueue< T >

PODを要素に持つキューをreallocベースで実装しています。

テンプレート引数
T要素の型。PODである必要があります。
説明
Tのアライメントはreallocが保証するアライメントに合致している必要があります。

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

構築子と解体子

§ ReallocQueue()

template<class T >
nn::nlib::ReallocQueue< T >::ReallocQueue ( ReallocFunc  func)
inlineexplicitnoexcept

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

引数
[in]funcrealloc関数

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

関数詳解

§ empty()

template<class T >
nn::nlib::ReallocQueue< T >::empty ( ) const
inlinenoexcept

キューが空かどうかを判定する

戻り値
trueならば空

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

§ front()

template<class T >
nn::nlib::ReallocQueue< T >::front ( )
inline

キューの先頭要素を取得する。

戻り値
キューの先頭要素の参照

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

§ GetRealloc()

template<class T >
nn::nlib::ReallocQueue< T >::GetRealloc ( ) const
inlinenoexcept

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

戻り値
realloc関数

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

§ pop() [1/2]

template<class T >
nn::nlib::ReallocQueue< T >::pop ( )
inlinenoexcept

キューの先頭要素を削除する。

戻り値
成功した場合はtrue

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

§ pop() [2/2]

template<class T >
nn::nlib::ReallocQueue< T >::pop ( T *  v)
inlinenoexcept

キューの先頭要素を取得し、その後削除する。

引数
[in]vキューの先頭要素が格納されるポインタ
戻り値
成功した場合はtrue

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

§ push()

template<class T >
nn::nlib::ReallocQueue< T >::push ( const T &  val)
inlinenoexcept

キューに要素を追加する。

引数
[in]val追加する要素
戻り値
成功した場合はtrue

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

§ size()

template<class T >
nn::nlib::ReallocQueue< T >::size ( ) const
inlinenoexcept

キューのサイズを取得する

戻り値
キューのサイズ

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

§ swap()

template<class T >
nn::nlib::ReallocQueue< T >::swap ( ReallocQueue< T > &  rhs)
inlinenoexcept

キューを交換する

引数
[in]rhs交換対象のキュー

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


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