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

已采纳回答 / Cocoabeans
没有代码的话看不出来哪里错了,一个可能的原因是坐标类的构造函数没有赋初值导致编译器随机给你赋了一个值(我也是小白,这是个人猜测

最新回答 / Cocoabeans
你需要先实例化一个Coodinate对象,在实例化的时候就会要求你把x和y输入进去了,然后pop和push需要调用的参数都是实例化的对象而不是x和y;

已采纳回答 / 慕瓜4413491
因为每次元素入栈后,栈顶都做了加1操作,指向下一个元素入栈将要存放的位置,出栈时,需要将栈顶减1才能取到元素

最赞回答 / 明阳青昀
while循环简单易懂,for也可以for(int i = pStack.stackLength-1;i>=0;i--){    pStack->pop(elem)    cout<<num[elem]}

最新回答 / 程序员麦麦
模板的编译是不能分离的,所以函数实现要写在头文件中。

最新回答 / 獨灬調
放多点代码上来,你这个问题应该不是错在demo里面

已采纳回答 / dadisdad
栈满的时候,m_iTop比size大一,因为前面push时m_iTop会++

最新回答 / 慕田峪7551596
用例是 实例化一个对(并非实例化多个)象,析构函数是释放数组(因为申请了N个内存)。

已采纳回答 / BingBing_Elf
在我看来,存在即有意义。栈和队列是一种逻辑结构。数组只是栈和队列的一种实现方式,栈和队列也可以用链表来实现。栈和队列与数组不是并列结构。

最赞回答 / 慕粉1213598641
看下这个变量什么时候定义好,作用域是什么

最新回答 / 慕田峪2224101
template<typename T> int& MyStack<T>::operator[](int i) {     return m_pBuffer[i];}我是这么实现的,但是好像行不通报错: no match for 'operator[]' (operand types are 'char [17]' and 'MyStack<int>')|但是我感觉这样可以重载呀

最新回答 / KunKunKKK
我也是这种情况 写的就是m_iTop-1 为什么输出结果是这个样子 求解答

已采纳回答 / oldlin
因为你结果显示栈长度是4,所以pop应该是正确的,多一个o应该是你多输出了一个o,你检查一下能输出elem的语句是不是两个,造成重复输出。另外你可以展示一下你的代码,看到你的代码才能准确的告诉你原因

最新回答 / qq_梦飞扬_7
检查是否在头文件中声明,是否在编译中有对应的obj文件
课程须知
"本课程是数据结构初级课程 1、熟练掌握C++语言基础语法"
老师告诉你能学到什么?
1、栈的工作原理 2、栈的实现方法及编码技巧 3、栈模板的编码技巧和使用技巧 4、数制转换编程思路及栈的作用 5、括号匹配编程思路及栈的作用

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消