gpt4 book ai didi

c++ - 在这部分代码中插入 "item"的位置

转载 作者:行者123 更新时间:2023-11-28 07:05:46 26 4
gpt4 key购买 nike

好的,只是开始我已经知道这是错误的我只是无法弄清楚“项目”被插入到哪里所以我可以扭转这种情况发生的方式:

void Enqueue(T item)
{
if(num_items != MAX_SIZE)
{

Node *p = new Node; // creating a new node p
Node *q = new Node;// creating a new node q
front = p; // make p point directly to front
p -> data = item; // set item equal to whatever is in p
p->link = front; // um, pretty much saying the "front node" is next?
num_items++;
}

我想我真正的问题是我对指针缺乏很好的理解。

注意:忽略此编辑未完成

最佳答案

我有点不确定你在这里问什么,但我会尽力解释你的代码。

所以你将一些数据(一个项目对象)传递给你的函数

void Enqueue(T item)

检查项目数量(在我假设的列表中)不是最大值

if(num_items != MAX_SIZE)

然后创建一个节点类型的新对象

 Node *p = new Node; // creating a new node p

然后您将节点的数据成员(类型 T?)分配给您传入的项目。

p -> data = item; // set item equal to whatever is in p

你然后将最后一个节点(项目堆栈顶部的节点)链接到这个节点(将它们链接在一起)

p->link = front; // um, pretty much saying the "front node" is next?

然后您将 front 变量设置为您刚刚创建的这个节点(这样您就可以将它链接到下一个节点或知道从哪里开始等等)

front = p; // make p point directly to front?

最后你将项目总数增加 1

 num_items++;

就像我说的,我不确定你想知道什么,但我希望这能对你有所帮助 :)

要使用您传入的数据(类型 T),您可以使用:

front->data->DATAMEMBER();

注意:这只适用于最后一个链接,我确定你知道你在那里做什么。

关于c++ - 在这部分代码中插入 "item"的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21793638/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com