什么是"Microsoft C++ exception"?
What is a "Microsoft C++ exception"?
这主要是出于好奇,但在调试时,我经常看到一行看起来像这样:
在 MyApp.exe 中0x7583812f的首次机会异常:Microsoft C++异常:CTBadSupportFileException 在内存位置 0x039be09c..
我想知道,为什么它被称为"Microsoft"C++例外?
这真的是一个正常的C++例外吗?它派生自什么类?"Microsoft C++异常"是异常的类型,还是CTBadSupportFileException等异常派生的父类型?
为什么调试器会这样记录它们?
它不是"Microsoft"C++例外。这是一个"Microsoft C++"例外。
当使用 RaiseException
函数引发操作系统异常时,调用方指定异常代码。有一些标准的异常代码,例如堆栈溢出的0xC00000FD或访问冲突的0xC0000005。但您也可以引发自定义异常代码,并且Microsoft C++工具链用于所有C++异常的自定义异常代码是0xE06d7363。
请注意,操作系统异常和C++异常是不同的概念。调试器中的消息涉及操作系统异常。
调试器正在礼貌地对待您,而不是报告"异常0xE06d7363",而是说"Microsoft C++异常",它甚至会采取额外的步骤为您解码其参数。
相关文章:
- 为重写std::exception的库生成swig接口时出错
- 什么是 std::exception::what() 以及为什么要使用它?
- 链表"exception thrown"
- 为什么程序员同时使用 std::bad_alloc 和 std::exception.是否 std::例外 仅是不够的
- C++ broken_promise exception
- 请参阅在 Visual Studio 2019 中捕获 std::exception 时对函数模板实例化消息的引用
- QVTKWidget SetRenderWindow() with PCLVisualizer Exception
- 自定义派生的 std::exception 类的 'what' 函数返回神秘的废话
- 使用flag、return、exception、goto或break中止过程
- 由于某种原因,我的代码中出现了 [json.exception.type_error.302]。我知道错误意味着什么,但我不知道哪里有故障
- 派生自 std::exception 的类的赋值运算符
- 尝试打印字符串时"Python Exception <class 'gdb.error'> There is no member named _M_dataplus."
- std::exception :使用虚函数和继承与变量
- MFC ODBC SQLConfigDataSource() Unhandled Exception
- 这段 C++ 代码的奇怪行为(std::wcout 和 std::exception)
- VTK 7.1.1: vtkX3DExporter exception
- 无法在"catch(const std::exception &ex)"中捕获 std::invalid_argument
- opencv cv::addText exception if no window
- Ctypes: OSError: exception: stack overflow
- C++ CMake 构建错误:未定义对"boost::throw_exception(std::exception const&)"的引用