queue.push_back(val);
queue.push_front(val);
val = queue.pop_back();
val = queue.pop_front();
queue.size(); // 获取 queue 的 size
queue.delete(idx); // 删除指定 index 的元素
queue.delete(); // 删除 queue 中所有元素
queue.insert(index, val); // 插入元素
数组支持的用法,也可以用在 queue 上。
queue = queue.shuffle(); // queue 内元素随机乱序
queue = queue.unique(); // 删除 queue 中的重复元素
queue.min(); // 获取最小值
queue.max(); // 获取最大值
queue.reverse(); // 前后逆序
queue.sort(); // 从小大排序
queue.rsort(); // 从大到小排序
queue.sum(); // queue 内元素求和
queue.and();
queue.or();
queue.xor();
queue.product();
queue = queue.find(x) with (x==val); // 查找值为 val 的元素,x 不用提前声明
queue = queue.find(x) with (x!==val); // 删除 queue 中值为 val 的元素
除了 find,还有 find_index、find_first、find_first_index、find_last、find_last_index 等用法。
std::randomize(val) with {val inside queue}; // 在 queue 中取随机值
std::randomize(val) with {val inside {queue1, queue2};}; // 在两个 queue 中取随机值
std::randomize(val) with {!(val inside queue);}; // 在 queue 之外取随机值