问答详情
源自:4-1 环形队列实现上

两个错误,如何解决?

#include "stdafx.h"

#include<iostream>

using namespace std;

class Myqueue//建立一个环形队列的对象的方法

{

    public:

Myqueue(int queueCapacity);//创建队列

virtual ~Myqueue();//销毁队列

void clearqueue();//清空队列

bool queueempty()const;//判空队列检测

bool queuefill()const;//判满队列检测

int queuelength();//队列的长度

bool enqueue(int element);//新元素进队

bool dequeue(int &element);//首元素出队

void queuetraverse();///*遍历队列

    private:

int *m_pqueue;//队列数组指针

int m_iqueue;//队列元素个数

int m_iqueuecapacity;//队列数组容量*/

int m_iHead;

int m_itail;

}

//创建队列

Myqueue::Myqueue(int queueCapacity)

{

m_iqueuecapacity=queueCapacity;

m_iHead=0;

    m_itail=0;

m_iqueue=0;

m_pqueue=new int[m_iqueuecapacity];


}

//销毁队列

Myqueue::~Myqueue()

{

delete []m_pqueue;

m_pqueue=NULL;

}

//清空队列

void Myqueue::clearqueue()

{

m_iHead=0;

    m_itail=0;

m_iqueue=0;

}

//判空队列检测

bool Myqueue::queueempty()const

{

return m_iqueue==0?true:false;

}

//判满队列检测

bool Myqueue::queuefill()const

{

return m_iqueue==m_iqueuecapacity?true:false;

}

//队列的长度

int Myqueue::queuelength()

{

return m_iqueue;

}

//新元素进队

bool Myqueue::enqueue(int element)

{

if(queuefill())

{return false;}

else

{m_pqueue[m_itail ]=element;

m_itail++;

m_itail=m_itail%m_iqueuecapacity;

m_iqueue++;

return true;

}

}

//首元素出队

bool Myqueue::dequeue(int &element)

{

if(queueempty())

{

return false;

}

else

   {

element=m_pqueue[m_iHead];

m_iHead++;

m_iHead=m_iHead%m_iqueuecapacity;

m_iqueue--;

return true;

}

}

void Myqueue::queuetraverse()

{

for(int i=m_iHead;i<m_iqueue+m_iHead;i++)

{

cout<<m_pqueue[i%m_iqueue]<<endl;

}

}

int main(void)

{

Myqueue *p=new Myqueue(4);

p->enqueue(12);

p->enqueue(22);

p->queuetraverse();

delete p;

p=NULL;

system("pause");

return 0;

}


提问者:慕粉1009837 2017-04-13 23:37

个回答

  • 慕粉1009837
    2017-04-19 19:32:33

    1>c:\users\administrator\documents\visual studio 2010\projects\a002\a002\a002.cpp(28): error C2533: “Myqueue::{ctor}”: 构造函数不能有返回类型

    1>c:\users\administrator\documents\visual studio 2010\projects\a002\a002\a002.cpp(103): error C2264: “Myqueue::Myqueue”: 函数定义或声明中有错误;未调用函数


  • qq_木头_36
    2017-04-14 15:13:10

    帮错误原因贴出来