常用

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 = 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 等用法。

在 queue 内外随机选择

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 之外取随机值

参考

  1. SystemVerilog IEEE Std 1800-2017
  2. systemverilog queue 的使用,如何判断元素是否存在
  3. SystemVerilog中队列和数组的随机化
  4. SystemVerilog队列及数组方法

【SV 基础】queue 的一些用法相关推荐

  1. python中使用函数的优点_Python基础之函数基本用法与进阶详解

    本文实例讲述了Python基础之函数基本用法与进阶.分享给大家供大家参考,具体如下: 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的作用 函数 ...

  2. Queue 队列的用法

    队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作. LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用. 以下实例演示了队 ...

  3. java中的Queue队列的用法

    大家好,欢迎来到雄雄的小课堂,今天给大家分享的是"java中的Queue队列的用法" 前言:好多人对Queue不是很熟悉,毕竟平时也不怎么用,遇到集合要么List要么map这些常用 ...

  4. java socket 异步回调函数,分享nodejs异步编程基础之回调函数用法

    nodejs异步编程基础之回调函数用法分析 本文实例讲述了nodejs异步编程基础之回调函数用法.分享给大家供大家参考,具体如下: Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实 ...

  5. python基础函数及用法意思_Python基础之函数基本用法与进阶详解

    本文实例讲述了Python基础之函数基本用法与进阶.分享给大家供大家参考,具体如下: 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的作用 函数 ...

  6. java基础之 反射_Java基础之反射原理与用法详解

    本文实例讲述了Java基础之反射原理与用法.分享给大家供大家参考,具体如下: 1.什么是反射? 反射其实就是动态的加载类,我们在写JDBC的时候加载驱动Class.forName("xxx& ...

  7. C++之queue和dequeu用法

    一.queue介绍与用法  1.queue.cpp le Edit Options Buffers Tools C++ Help #include <iostream> #include ...

  8. 《Java基础——break与continue用法详解》

    Java基础--break与continue用法详解 一. break语句: 规则: 1. 仅用于循环语句和switch语句当中,用于跳出循环. 2. 当只有一层循环时,则直接跳出循环,不再进行下一轮 ...

  9. python循环语句画图_Python基础之循环语句用法示例【for、while循环】

    本文实例讲述了Python基础之循环语句用法.分享给大家供大家参考,具体如下: while 循环 Python中while语句的一般形式: while 判断条件: statements 同样需要注意冒 ...

  10. MATLAB三维绘图基础meshgrid函数的用法解析

    MATLAB三维绘图基础meshgrid函数的用法解析   MATLAB中meshgrid函数是用来生成网格的,函数用法是:   [X,Y] = meshgrid(x,y);这种是最常用的一种用法.x ...

最新文章

  1. 20190110-用笨办法找到二维矩阵的鞍点
  2. freemarke之TemplateDirectiveModel详解
  3. JavaFX UI控件教程(二十八)之UI控件的自定义
  4. 深入理解Magento – 第五章 – Magento资源配置
  5. 一次MySQL线上慢查询分析及索引使用
  6. FAIR 何恺明、Piotr、Ross等新作,MAE才是YYDS!仅用ImageNet1K,Top-1准确率87.8%!
  7. 解决Mac没有任何来源问题
  8. 海量数据库解决方案2011022101
  9. 财务人员必备的5个Excel技能,学会工资高出同事3倍!
  10. 生信技能树linux虚拟机,2019-08-21生信技能树Linux20题
  11. Datastage数据装载报错:Consumed more than 1000000 bytes looking for record delimiter
  12. 求俩向量角度 允许超过180度 python
  13. 华硕ASUS B250M PLUS+i5 7500+核显+macos12.0+opencore0.7.2
  14. srec_cat 常用参数的使用
  15. 回答腾讯云实名认证常见问题
  16. didi VirtualApk 框架的使用
  17. android字体!字节大神强推千页PDF学习笔记,大厂面试题汇总
  18. r语言结构方程模型可视化_R语言实现拟合神经网络预测和结果可视化
  19. Camtasia的字幕功能应当如何使用
  20. @各位家长:你与无烦恼辅导孩子作业之间,只差一个墨子(MOZI)智能作业辅导机

热门文章

  1. 高效学习-笔记-左耳听风
  2. EXCEL里的Trend函数如何做到数据预测?
  3. 面试中更多会考核相关技能的项目经验——再论程序员该如何准备面试
  4. Barsetto百胜图BAV02自助咖啡机,创造便捷生活的无限可能
  5. Python 教程之 为什么 Google 和 YouTube 使用 Python
  6. chrome firefox 获取模拟微信浏览器
  7. 【上市啦】“Python 之父” 力荐的蓝皮书,你知道是哪本吗?
  8. 爬虫小小实战——豆瓣电影top250
  9. 白月黑羽教python之selenium:课后练习作业一
  10. 优化家里网速,以TL-WR842N为例