gpt4 book ai didi

c++ - 队列、前端和后端未在范围内声明

转载 作者:行者123 更新时间:2023-11-30 02:50:18 25 4
gpt4 key购买 nike

我正在尝试创建一个队列程序,但我不断收到“front”和“rear”未在此范围内声明的错误。谁能告诉我我做错了什么?这是我的代码。我将它与我编写的其他代码进行了比较,并以完全相同的方式声明它们。

#include <iostream>
using namespace std;

class node{
public:
int data;
node *next;
node();
};

class que{
public:
node *front;
node *rear;
void enq(int a);
void deq();
void pq();
que();
};

que::que(){
front = NULL;
rear = NULL;
}


node::node(){
data = 0;
next = NULL;
}

void enq(int a){
node *temp;
temp = new node;
temp->data = a;
if(front == NULL && rear == NULL){
front = rear = temp;
}
else{
rear->next = temp;
rear = temp;
}
}

void deq(){
node *temp;
temp = front;
if(front == NULL)
return;
if(temp == rear)
front = rear = NULL;
else{
temp = temp->next;
}
delete temp;
}

void pq(){
node *curs;
curs = front;
if(front == NULL)
return;
while(1){
cout << curs->data;
if(curs->next == NULL)
break;
else
curs=curs->next;
}

}

int main(){

que *Q = new que;

return 0;
}

最佳答案

在您的代码中,您开始定义如下函数:

void pq(){

但这不是类(class)的一部分,你必须说:

void deq::pq(){

关于c++ - 队列、前端和后端未在范围内声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20572823/

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