C++程序不运行直接ipad如何退出程序

当前位置: >
> 为什么小弟我的C++程序第一次运行正常,再次运行就有有关问题
为什么小弟我的C++程序第一次运行正常,再次运行就有有关问题
seapower027 & at
为什么我的C++程序第一次运行正常,再次运行就有问题?小弟用链表编一个c++图书管理系统,目前只包括新书入库和查书功能。
程序主要有两个问题,第一个问题是查书功能中采用书名或作者名查询时结果会出现两遍;第二个问题就是程序第一次运行正常,再次运行时添加书还可以,但查询时就会出错。
希望高手不吝赐教!
#include &
&iostream&
#include &
#include &
#include &
using & namespace &
class & Book &
Book(string & num,string & aut,string & tit,int & stn=1,int & otn=0); &
Book* & RemoveAfter(); &
friend & class & B &
void & display(); &
string & &
string & &
string & &
Book & * &
Book::Book(){next=NULL;} &
Book::Book(string & num,string & aut,string & tit,int & stn,int & otn){ &
storenum= &
next=NULL; &
void & Book::display(){ &
cout & & &书目号: & & &number & &endl & & &作者: & & &author & &endl & & &书名: & & &title & &endl & & &库存册数: & & &storenum & &endl & & &已借出册书: & & &outnum & & &
Book* & Book::RemoveAfter(){ &
Book* & p= &
if(next==NULL)p=NULL; &
else & next=p-& &
return & &
class & Booklist &
Booklist(); &
void & PrintList(); &
void & InsertRear(Book & *p1); &
Book* & CreateBook(Book & bk); &
Book* & DeleteBook(Book & *p1); &
void & Find(); &
Book & *head,* &
Booklist::Booklist(){ &
head=rear=new & Book(); &
void & Booklist::PrintList(){ &
Book & *p=head-& &
while(p!=NULL){ &
p-& display(); &
void & Booklist::InsertRear(Book & *p1){ &
p1-& next=rear-& &
rear-& next=p1; &
rear=p1; &
Book* & Booklist::CreateBook(Book & bk) &
{Book & *p=new & Book(bk); &
return & &
Book* & Booklist::DeleteBook(Book & *p1) &
{Book* & p= &
while(p-& next!=NULL&&p-& next!=p1)p=p-& &
if(p-& next==rear)rear=p; &
return & p-& RemoveAfter(); &
void & Booklist::Find(){ &
Book & *p; &
cout & & &1.按照书目编号查找 & & &endl & & &2.按照书名查找 & & &endl & & &3.按照作者名查找 & & & &
string & num,aut, &
switch(i){ &
case & 1:cout & & &请输入书目编号: & & & &
p=head-& &
while(p!=NULL&&p-& number!=num)p=p-& &
if(p==NULL){ &
cout & & &查找失败! &; &
p-& display(); &
case & 2:cout & & &请输入书名: & & & &
本问题标题:
本问题地址:
温馨提示:本问题已经关闭,不能解答。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&&&湘教QS2-164&&增值电信业务经营许可证湘B2-This site in other countries/regions:析构函数为什么没有自动执行呢_c++吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:143,021贴子:
析构函数为什么没有自动执行呢收藏
我定义了个类
类里我写了析构函数 然后我在主函数里用该类定义了一个对象&&
并对这个对象进行了一些操作 然后运行&&&
但并没有执行析构函数啊
......我用的是vs2010
析构函数一定会执行除非程序没运行完就崩溃
如果你是new一个对象,没有释放。 析构函数是不会执行到的。直接定义对象的话,必然执行。
你怎么知道没有执行呢?也有可能是执行了,你没有看到呢。
还有基类析构器非虚的问题
除非对象消失了,否则虚构函数不会执行
呃..不可能的
就是一个很简单的程序&&&&
都没有用我的析构函数里面是一句话
cout《“****”; 但是屏幕上始终没有显示出
回复:9楼程序结束时候才输出,程序结束了你还能看到么?你可以打开控制台窗口,在里面执行你的程序,看看是不是会输出。
不是啊 我的主程序的最后一行是 system(“pause”); return 0;
前面的执行完后就应该会显示出析构函数里的cout的
你把程序贴上来才知道怎么回事啊……
不可能的,不如物理帝贴上代码?
class Aaa{&&&
public:&&&&&&&
Aaa();&&&&&&&& Aaa(int,int);&&&&&&&
~Aaa();&&&&&&
friend ostream & operator &&(ostream &,Aaa &);&&&
private:&&&&&&&&&&&&&&}; 这是在头文件里写的 然后在**.cpp里定义具体的函数
其中对~Aaa()的定义为:
cout&&“destroy”;就这一句 在主函数里写: &&&
Aaa a1(0,'c');&&&
cout&&a1;&&&
return 0; 只有两句 然后执行的结果只有 0
并不显示destroy
system函数也是在程序的执行过程中的,这时候程序没有结束的。你新打开控制台窗口执行你的程序,看看结果。
把cpp也放上来吧,从你说的里是没有问题的
主函数里改成(加个大括号){&&&&
Aaa a1(0,'c');&&&& cout&&a1;}&&&& return 0; 试试看我知道dev是这样的,要退出作用域后才析构,所以在主函数返回之前看不到
结合了15L和17L两位的方法
现在析构函数可以自动执行了~~
谢谢楼上的各位!! 谢谢!
登录百度帐号我的游戏推荐游戏
后查看最近玩过的游戏
为兴趣而生,贴吧更懂你。或C++生成exe文件移到win7电脑上运行出错,提示出现了一个问题,导致程序停止正常工作,如果有可用的解决方案,windows将关闭程序并通知您
[问题点数:20分,结帖人ylongwu]
C++生成exe文件移到win7电脑上运行出错,提示出现了一个问题,导致程序停止正常工作,如果有可用的解决方案,windows将关闭程序并通知您
[问题点数:20分,结帖人ylongwu]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。vs 2010编译一个简单的C++程序运行出结果后自动关闭
用vs 2010编译一个简单的C++程序运行出结果后自动关闭,后来网上找到解决方法是用调试菜单里的&开始执行(不调试)&来运行程序,这样在程序结束前会提示按任意键继续。如果想离开编译器运行,请在return 0前加上一句话: system(&Pause&);。(添加这个头文件:#include &stdlib.h&)但是选择Start without& Debugging运行还是一样消失了,使用添加system(&Pause&)的方法是可以成功的,但是我以后每次想要看到停留在CMD的结果都要通过这种方式来看吗,不可以有什么方法不用添加这个语句跟头文件使结果跟6.0一样停留在屏幕上吗?
直接在cmd下运行该程序......cmd不会自动关闭的.0xBAADF00D
已标记为答案
在return之前加一个断点就可以了.0xBAADF00D
您的意思是在return 0前加上一句话: system(&Pause&)吗& 这个我已经知道了 我想知道可不可以通过修改某个设置的方法省去添加断电的步骤。比如我运行以下代码的时候,结果出来后直接自动关闭了CMD窗口。#include &iostream&struct Point{&&&&&&&&};
void main(){& P& pt.x=5;& pt.y=3;& cout&&pt.x&&endl&&pt.y&&}
没有你说的那种配置项。
直接在cmd下运行该程序......cmd不会自动关闭的.0xBAADF00D
已标记为答案
Microsoft 正在进行一项网上调查,以了解您对 Msdn 网站的意见。如果您选择参加,我们将会在您离开 Msdn 网站时向您显示该网上调查。是否要参加?
<input type="hidden" id="hdnTrackerText" value="请不要关闭此窗口。谢谢!完成访问时,调查将显示在此处,所以请不要关闭此窗口。" />
其他 Office 网站

我要回帖

更多关于 ipad怎么退出程序 的文章

 

随机推荐