FixedQueue
固定長キュー
固定長のキューを実装します。
template <typename T>
class FixedQueue
定義・メンバー変数
public:
typedef uint16_t size_type;
typedef T value_type;
private:
std::unique_ptr<T[]> _p;
size_type _head;
size_type _tail;
size_type _ct;
size_type _size;
メソッド
FixedQueue() - コンストラクタ
FixedQueue(size_type n)
void setup(size_type n)
n
を最大値としてキューを初期化・生成します。
setup()
void setup(size_type n)
n
を最大値としてキューを初期化・生成します。
push()
void push(T&& c)
void push(const T& c)
キューに要素を追加します。
push_no_assign()
キューに要素を追加しますが、キュー内部にはデータコピーせず、替わりにキュー内部の要素へのポインタを返します。
pop()
キューから要素を削除します。
front()
先頭要素にアクセスします。
back()
末尾要素にアクセスします。
operator[] ()
配列のようにインデックスを指定して、キューの要素にアクセスします。
pop_front()
キューの先頭要素を戻り値し、またキューよりその要素を削除します。(pop()
とfront()
の組み合わせです)
empty()
キューが空の場合true
を返します。
size()
現在キューにあるアイテム個数を返します。
capacity()
キューの最大長を返します。