返回值会出现随机情况

来源:互联网 发布:微商管理系统源码 编辑:程序博客网 时间:2024/06/03 10:26

无意中在测试代码的时候,出现的一个小情况

 

debug情况一切正常,release就不对了

 

问题是这样的(因为忽略掉了一个warning):



具体的Login代码如下:

bool CSendMail::Login(MailUserInfo &mail_user_info){memcpy(&mail_user_info_, &mail_user_info, sizeof(mail_user_info));if (!CReateSocket(sock_)) // 建立连接{return false;}if (!Logon(sock_))// 登录邮箱{return false;}}

测试代码如下:

cout << "111111111" << endl;mail_content_.mailbox_sender_show_name = new char[strlen("hr") + 1];cout << "222222222" << endl;strcpy(mail_content_.mailbox_sender_show_name, "hr");cout << "33333333333" << endl;// 在这进行邮箱的登录if (mail_.Login(mail_user_info_) == false){cout << "444444444" << endl;return;}cout << "555555555" << endl;

直接编译的时候debug没任何问题



release就有问题了:



仔细一查看,原来是返回值出现的问题

 


差不多可以得出结论了:

debug的bool返回值默认为true,而release版本的bool返回值则默认为false


0 0
原创粉丝点击