c++初学者请教一个问题啊

TreeWasTaken-avatar

TreeWasTaken

2022-07-02T23:14:47+00:00

我跟着黑马视频学的,但是为什么这个代码中无法达到死循环呢?

我把switch放入死循环了,添加新职工也非常顺利,可是在添加新职工之后就显示程序已结束退出循环了。

我检查了代码,和老师敲得一样啊,为什么不行呢?[img]https://img.nga.178.com/attachments/mon_202207/05/-7Q2q-6fK1nT3cSj7-sg.jpg[/img][img]https://img.nga.178.com/attachments/mon_202207/05/-7Q2q-v97K18T3cSj7-sg.jpg[/img]
TreeWasTaken-avatar

TreeWasTaken

没有老哥能指点一下吗?[s:ac:晕]
yung tungsten-avatar

yung tungsten

看看workermanager怎么定义的
BasicallyMe3-avatar

BasicallyMe3

把你add_emp的代码贴一下呀。
Kalaner-avatar

Kalaner

你每个switch分支都break出了while
ᴋαт-avatar

ᴋαт

break换成continue?
jaxxz93-avatar

jaxxz93

添加职工的方法抱错了吧? 里面的代码发出来
xer129-avatar

xer129

程序挂了吧[s:ac:哭笑]
Yoru WD-avatar

Yoru WD

设个断点调试下呀
TreeWasTaken-avatar

TreeWasTaken

[quote][pid=622788260,32564700,1]Reply[/pid] Post by [uid=34848232]there is [/uid] (2022-07-05 07:38):

你每个switch分支都break出了while[/quote]我只是break出了switch循环啊,还是在while循环中呢
TreeWasTaken-avatar

TreeWasTaken

[quote][pid=622788480,32564700,1]Reply[/pid] Post by [uid=1907172]不知道昵称是什么[/uid] (2022-07-05 07:41):

break换成continue?[/quote]这个不行啊,switch语法就是规定break不能换呀
Zapatito talla 77-avatar

Zapatito talla 77

[quote][pid=622788260,32564700,1]Reply[/pid] Post by [uid=34848232]there is [/uid] (2022-07-05 07:38):

你每个switch分支都break出了while[/quote]你这个回答就很绝
Tima-avatar

Tima

教你你个日志大法来调试。
把while循环的代码块的开头和结尾加上日志,打印出随便什么字符串来。
然后在addemp 这个函数调用的上面和下面也打印点什么。
最后在整个main的结尾retuan0前也打印点什么。

最后运行,看输出的日志就知道运行到哪一步挂了。

日志大法好!
LegendJoz-avatar

LegendJoz

add_emp()里面有什么?
TreeWasTaken-avatar

TreeWasTaken

是不是和visual Studio程序有关呢?因为我一开始貌似出问题了,无法包含某个头文件,怎么试都不行,最后删除项目,新建一个项目就可以包含头文件了………
TreeWasTaken-avatar

TreeWasTaken

[quote][pid=622790234,32564700,1]Reply[/pid] Post by [uid=74084]洛亚[/uid] (2022-07-05 07:57):

add_emp()里面有什么?[/quote]添加新职工的代码。

int addnum;
cin>>addnum;

if(addnum>0)
{
跳转到一个判断是否id重复的函数

然后就是开辟新空间
newsize=this->m_empnum+addnum;
worker** newspace=new worker*[newsize];

然后就是添加id姓名之类的,并且把worker指针 指向不同的子类,因为worker父类下有三个员工 经理 老板的子类。

最后是把旧的空间删除,把指针指向新空间,
更新人数,保存文件
这些代码太多了就不打了。


}
eyevee-avatar

eyevee

碰到回车了呗…进入default了
Kuso baishunpu no neko-avatar

Kuso baishunpu no neko

二把刀表示灵异事件一律排除法[s:ac:哭笑]
DJ Rocket X-avatar

DJ Rocket X

你把add_emp注释掉,看看这个switch能不能正常跑。