为了账号安全,请及时绑定邮箱和手机立即绑定

>MSVCRTD.lib(exe_main.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中被引用 1>C:\Users\Administrator\Desktop\studyspace\MyQueue\Debug\MyQueue.exe : fatal error LNK1120: 1 个无法解析的外部命令

#include "MyQueue.h"

#include <iostream>


using namespace std;


MyQueue::MyQueue(int QueueCapacity)

{

m_iQueueCapacity = QueueCapacity;

m_iHead = 0;

m_iTail = 0;

m_pQueue= new int(m_iQueueCapacity);

m_iQueuelen = 0;


}

MyQueue::~MyQueue()

{

delete []m_pQueue;

m_pQueue = NULL;

}

void MyQueue::ClearQueue()

{

m_iHead = 0;

m_iTail = 0;

m_iQueuelen = 0;

}

bool MyQueue::QueueEmpty()const

{

return m_iQueuelen == 0 ? true : false;

}

int MyQueue::QueueLengh()const

{

return m_iQueuelen;

}

bool MyQueue::Queuefull()const

{

return (m_iQueueCapacity == m_iQueuelen) ? true : false;

}

bool MyQueue::EnQueue(int element)

{

if (!Queuefull())

{

m_pQueue[m_iTail] = element;

m_iQueuelen++;

if (m_iTail<m_iQueueCapacity-1)

{

m_iTail++;

}

else

{

m_iTail = 0;

}

return true;

}

else

return false;

}

bool MyQueue::DeQueue(int &element)

{

if (Queuefull())

{

return false;

}

element = m_pQueue[m_iHead];

m_iQueuelen--;

if (m_iHead < m_iQueueCapacity - 1)

{

m_iHead++;

}

else

{

m_iHead = 0;

}

return true;

}

void MyQueue::QueueTraverse()

{

for (int i=m_iHead;i!=m_iTail;)

{


cout << m_pQueue[i] << endl;

if (i<m_iQueueCapacity - 1)

{

i++;

}

else

{

i = 0;

}

}

}


正在回答

2 回答

在  DeQueue() 出队   函数部分有问题,判断条件应该是写错了,应该是  if (Queueempty()) , 而不是if (Queuefull()) 

0 回复 有任何疑惑可以回复我~
#1

sodo0 提问者

非常感谢!
2017-04-03 回复 有任何疑惑可以回复我~

#include "MyQueue.h"

#include <iostream>


using namespace std;



int main(void)

{

MyQueue *Safe = new MyQueue(4);

Safe->EnQueue(4);

Safe->EnQueue(5);

//Safe->EnQueue(6);

Safe->QueueTraverse();

system("pause");

return 0;

}

当加入第三个元素时就会崩溃,调试了半天也没找到问题所在

0 回复 有任何疑惑可以回复我~
#1

yasinSun

逻辑肯定是没问题的,在我电脑上运行可以,程序最后要记得释放内存,会不会是关键字冲突或其他问题,具体我也不是很清楚
2017-04-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

>MSVCRTD.lib(exe_main.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中被引用 1>C:\Users\Administrator\Desktop\studyspace\MyQueue\Debug\MyQueue.exe : fatal error LNK1120: 1 个无法解析的外部命令

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信