【SV 基础】queue 的一些用法
常用
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 之外取随机值
参考
- SystemVerilog IEEE Std 1800-2017
- systemverilog queue 的使用,如何判断元素是否存在
- SystemVerilog中队列和数组的随机化
- SystemVerilog队列及数组方法
【SV 基础】queue 的一些用法相关推荐
- python中使用函数的优点_Python基础之函数基本用法与进阶详解
本文实例讲述了Python基础之函数基本用法与进阶.分享给大家供大家参考,具体如下: 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的作用 函数 ...
- Queue 队列的用法
队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作. LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用. 以下实例演示了队 ...
- java中的Queue队列的用法
大家好,欢迎来到雄雄的小课堂,今天给大家分享的是"java中的Queue队列的用法" 前言:好多人对Queue不是很熟悉,毕竟平时也不怎么用,遇到集合要么List要么map这些常用 ...
- java socket 异步回调函数,分享nodejs异步编程基础之回调函数用法
nodejs异步编程基础之回调函数用法分析 本文实例讲述了nodejs异步编程基础之回调函数用法.分享给大家供大家参考,具体如下: Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实 ...
- python基础函数及用法意思_Python基础之函数基本用法与进阶详解
本文实例讲述了Python基础之函数基本用法与进阶.分享给大家供大家参考,具体如下: 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的作用 函数 ...
- java基础之 反射_Java基础之反射原理与用法详解
本文实例讲述了Java基础之反射原理与用法.分享给大家供大家参考,具体如下: 1.什么是反射? 反射其实就是动态的加载类,我们在写JDBC的时候加载驱动Class.forName("xxx& ...
- C++之queue和dequeu用法
一.queue介绍与用法 1.queue.cpp le Edit Options Buffers Tools C++ Help #include <iostream> #include ...
- 《Java基础——break与continue用法详解》
Java基础--break与continue用法详解 一. break语句: 规则: 1. 仅用于循环语句和switch语句当中,用于跳出循环. 2. 当只有一层循环时,则直接跳出循环,不再进行下一轮 ...
- python循环语句画图_Python基础之循环语句用法示例【for、while循环】
本文实例讲述了Python基础之循环语句用法.分享给大家供大家参考,具体如下: while 循环 Python中while语句的一般形式: while 判断条件: statements 同样需要注意冒 ...
- MATLAB三维绘图基础meshgrid函数的用法解析
MATLAB三维绘图基础meshgrid函数的用法解析 MATLAB中meshgrid函数是用来生成网格的,函数用法是: [X,Y] = meshgrid(x,y);这种是最常用的一种用法.x ...
最新文章
- 20190110-用笨办法找到二维矩阵的鞍点
- freemarke之TemplateDirectiveModel详解
- JavaFX UI控件教程(二十八)之UI控件的自定义
- 深入理解Magento – 第五章 – Magento资源配置
- 一次MySQL线上慢查询分析及索引使用
- FAIR 何恺明、Piotr、Ross等新作,MAE才是YYDS!仅用ImageNet1K,Top-1准确率87.8%!
- 解决Mac没有任何来源问题
- 海量数据库解决方案2011022101
- 财务人员必备的5个Excel技能,学会工资高出同事3倍!
- 生信技能树linux虚拟机,2019-08-21生信技能树Linux20题
- Datastage数据装载报错:Consumed more than 1000000 bytes looking for record delimiter
- 求俩向量角度 允许超过180度 python
- 华硕ASUS B250M PLUS+i5 7500+核显+macos12.0+opencore0.7.2
- srec_cat 常用参数的使用
- 回答腾讯云实名认证常见问题
- didi VirtualApk 框架的使用
- android字体!字节大神强推千页PDF学习笔记,大厂面试题汇总
- r语言结构方程模型可视化_R语言实现拟合神经网络预测和结果可视化
- Camtasia的字幕功能应当如何使用
- @各位家长:你与无烦恼辅导孩子作业之间,只差一个墨子(MOZI)智能作业辅导机
热门文章
- 高效学习-笔记-左耳听风
- EXCEL里的Trend函数如何做到数据预测?
- 面试中更多会考核相关技能的项目经验——再论程序员该如何准备面试
- Barsetto百胜图BAV02自助咖啡机,创造便捷生活的无限可能
- Python 教程之 为什么 Google 和 YouTube 使用 Python
- chrome firefox 获取模拟微信浏览器
- 【上市啦】“Python 之父” 力荐的蓝皮书,你知道是哪本吗?
- 爬虫小小实战——豆瓣电影top250
- 白月黑羽教python之selenium:课后练习作业一
- 优化家里网速,以TL-WR842N为例