VS 2017 C++使用 try
手头有本C++基础课本,“The Programming Principles and Practice Using C++" ,以Visual Studio 2005 为背景讲述,在讲到关于代码中的 ”error and debugging"中,使用了如下示例代码:
#include "../../std_lib_facilities.h" // 书本给出的头文件,可以完成基本功能
int main()
try {
string s = "Success!\n"; //长度为9的字符串
for (int i=0; i<10; ++i) // exception 所在,读取字符串 越界
cout << s[i];
keep_window_open();
return 0;
}
catch (exception& e) {
cerr << "error: " << e.what() << '\n'; // 输出错误信息
keep_window_open(); //阻止运行窗口关闭
return 1;
}
catch (...) {
cerr << "Oops: unknown exception!\n";
keep_window_open();
return 2;
}
其在 VS 2005 上的结果为:
Success!
error: Range error: 9
……
而在VS 2017 上的结果:
Success!
(直接跳转到开发环境中,打开相关的底层代码(与string相关),并在旁边使用“窗口标签”提示,代码出错及原因)
请问这是什么原因呢?如何使VS 2017上的运行情况和VS 2005上相同呢?
最后更新:2017-08-25 16:02:25
上一篇:
正确登录密码登录时显示错误
下一篇:
为何微软鼠标和键盘中心无法识别出Sculpt舒适滑控鼠标和舒适曲线键盘3000?
你的设备已过期,并缺少重要的安全和质量更新,因此存在风险。让我们带你重回正轨,这样
Microsoft store 无法联网,显示Microsoft Store需要联网,你似乎没有联网
设备以迁移 由于仅部分匹配或匹配不明确,因此无法迁移设备
由于在创建转储期间出错,创建转储文件失败。
发生临时 DNS 错误
应用商店,在我们这边发生问题,无法使你登陆,错误代码: 0xD000000D
照相机不可用,错误代码:0xA00F4244(0xC00DABE0)
应用商店打开异常提示“清单中指定了未知的布局”
自定义扫描Windows defender里面的设备性能和运行状况 黄色感叹号问题
windows预口体验成员内口版本遇到问题需要重启
热门内容
windows10 点开此电脑后,有两个显示硬盘盘符的目录是怎么回事?
windows 10 专业版无法下载中文语言包
KB4056892
win10不能共享文件夹
在Surfacebook上用Windows to go 1703版本,更新后重启蓝屏,无法进入系统
windows10 1709版本更新失败,错误0x8007001f
microdoft visual c++ 2015 redistributable
WIN10 Insider Preview 17025更新失败,错误代码0x80096004
计算机管理服务 出现一个内部错误(INVALID
关于控制面板中的安全和维护内提示Windows defender 防病毒已关闭的问题