返回介绍

4.14 队列

发布于 2020-09-09 22:55:45 字数 804 浏览 1089 评论 0 收藏 0

队列是一个相同元素的可变尺寸的有序集合。队列能够以常量时间访问它的所有元素,也能够以常量时间在队列的尾部和头部插入和删除元素。队列中的每一个元素都通过一个序号来标识,这个序号代表了元素在队列内的位置,0代表第一个元素,$代表最后一个元素。队列类似于一个一维的非压缩数组,它可以自动地增长和缩减。因此,与数组一样,队列可以使用索引、串联、分片、相等操作符进行处理。

队列使用与非压缩数组相同的语法声明,但可以使用$作为数组尺寸。队列的尺寸可以通过指定可选的右边界(最后一个索引)进行限制。

variable_dimension ::=  // 引用自附录A.2.5
     {sized_or_unsized_dimension}
    | associative_dimension
    | queue_dimension

queue_dimension ::= [$[:constant_expression]]

语法4-3—队列维数的声明(摘录自附录A)

constant_expression必须能够计算成一个正的整数值

例如:

byte q1[$];                // 一个字节队列
string names[$] = {"Bob"}; // 具有一个元素的字符串队列
integer Q[$] = {3, 2, 7};  // 一个被初始化成三个元素的整数队列
bit q2[$:255];             // 一个最大尺寸为256的位队列

空队列文本{}可以用来指示一个空队列。如果声明时没有提供初始值,那么队列变量被初始化成一个空队列。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文