首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >队列链表脱队列函数

队列链表脱队列函数
EN

Stack Overflow用户
提问于 2015-11-13 22:24:35
回答 2查看 848关注 0票数 0

目前,我正在学习各种链接列表、队列和堆栈。我正在读一些关于各种队列函数的注释。我很难理解所提供的去队列函数。

代码语言:javascript
复制
void CintQueue::Dequeue(int& item) //Remove front Item from the Queue
{
   Node *TempPtr;

   TempPtr = m_qFront;
   item = m_qFront->data;
   m_qFront = m_qFront->next;
   if (m_qFront == NULL)
       m_qRear = NULL;
   delete TempPtr;
}

我不明白为什么有一个参数被传递到去队列。目的是什么?我从代码中看到它被分配给前端节点的数据值,但是函数dequeue没有返回值,所以我不理解它的用途。有人能解释一下这个功能是如何工作的吗?是否需要一个单独的函数来获得从队列中删除的值?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-13 22:29:29

函数参数被传递给引用。因此,当它在函数中设置时,它将传递的变量设置为参数:

代码语言:javascript
复制
CintQueue q;  // define queue
// fill q with ints
int i;
q.Dequeue(i);  // i is set here
票数 0
EN

Stack Overflow用户

发布于 2015-11-13 22:31:38

传递与队列的第一个对象具有相同类型的变量的引用。在该方法中,将第一个项的数据保存到此变量中,然后删除该项。因此,您可以获得队列标题项的数据,并只使用一个函数调用就可以删除它。

传递对函数的引用并将某些内容分配给它,是空函数返回某项内容的一种方法。您还可以使用返回值和不带参数的方法创建具有相同目的的方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33702761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档