首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++的一个有关问题,没有解决思路的

2012-04-10 
C++的一个问题,没有解决思路的这是我的源程序:#include iostream.hconst int size 100class qtype{pu

C++的一个问题,没有解决思路的
这是我的源程序:

#include <iostream.h>
const int size = 100;

class qtype
{
public:
qtype():head(0),tail(0){}
void store(int num);
int fetch();
private:
int quenue[size];
int head,tail;
};

void qtype::store(int num)
{
if((tail+1)%size==head)
{
cout<<"queue is full\n";
return;
}
tail = (tail+1)%size;
queue[tail]=num;
}

int qtype::fetch()
{
if(head==tail)
{
cout<<"queue is empty\n";
return 0;
}
head = (head+1)%size;
return queue[head];
}

void main()
{
qtype q1,q2;
for(int i =1; i<=10; i++)
{
q1.store(i);
q2.store(i*i);
}

for (int j =1; j<=10; j++)
{
cout<<"Dequeue1:"<<q1.fetch()<<endl;
}
}

编译时报如下错误:


QType.cpp
D:\visual c\QtType\QType.cpp(23) : error C2065: 'queue' : undeclared identifier
D:\visual c\QtType\QType.cpp(23) : error C2109: subscript requires array or pointer type
D:\visual c\QtType\QType.cpp(23) : error C2106: '=' : left operand must be l-value
D:\visual c\QtType\QType.cpp(34) : error C2109: subscript requires array or pointer type
执行 cl.exe 时出错.

[解决办法]

C/C++ code
#include <iostream.h>const int size = 100;class qtype{public:    qtype():head(0),tail(0){}    void store(int num);    int fetch();private:    int quenue[size];    int head,tail;};void qtype::store(int num){    if((tail+1)%size==head)    {        cout<<"queue is full\n";        return;    }    tail = (tail+1)%size;    quenue[tail]=num;   // 拼写错了}int qtype::fetch(){    if(head==tail)    {        cout<<"queue is empty\n";        return 0;    }    head = (head+1)%size;    return quenue[head];}void main(){    qtype q1,q2;    for(int i =1; i<=10; i++)    {        q1.store(i);        q2.store(i*i);    }        for (int j =1; j<=10; j++)    {        cout<<"Dequeue1:"<<q1.fetch()<<endl;    }}
[解决办法]
int quenue[size]; 改下:int queue[size];

最好使用 #include <iostream>
[解决办法]
把代码中的queue改成quenue就行了

热点排行