为什么我得到第一次机会异常,如果没有人调用该函数
Why I get First-chance exception if no one calls the function?
突然,我的代码开始抛出一个异常First-chance exception at 0x7731c41f in VideoPlayer.exe: Microsoft C++ exception: GenICam::RuntimeException at memory location 0x0018f5dc..
,我找不到它抛出的确切位置,所以我在main
函数和main
之外的所有内容中注释了所有内容。我开始逐一取消注释代码块,而main
中的代码仍然注释。在这样做的时候,我注意到有一个函数A
,当它被注释时没有异常,但是当它不被注释时,它会抛出上面的异常。
我不明白它如何能导致异常,如果它不调用(我放置断点在它和代码main被注释)?
您的函数将在静态初始化期间使用。看下面的例子:
#include <iostream>
bool static_func()
{
std::cout << "Before main" << std::endl;
return true;
}
static const bool b = static_func();
int main()
{
std::cout << "We are main" << std::endl;
return 0;
}
因为你只看到第一次异常,所以它将被捕获和处理。例如,我在抽象工厂中见过这样的结构,在那里工厂配置自己。没有命中断点的原因一定是别的原因。
在VS中,Debug菜单,Exceptions…检查投掷柱的匹配类型。然后开始调试,它将在发生throw的地方停止。你可以看看为什么
相关文章:
- 如果没有malloc,链表实现将失败
- 如果没有数学库,我如何在C++中创建复利公式
- 有没有办法在 c++ 中同时生成随机数?如果没有,是否有解决方法?
- 检查数组中是否有字符串中的值,如果没有,则添加它
- 为什么使用 std::vector 的代码不能编译,但使用 std::unique_ptr 如果没有 noexcept
- 如果没有重新散列,为什么 unordered_set::begin() 会改变?
- 包装器是从 strcat_s() 到 strcat() 吗?如果没有,是否可以创建一个?
- 检查私有成员变量是否在一定范围内,如果没有调整
- 我是否应该在包含虚拟方法的类上使用'memcpy'?如果没有,如何替换它?
- 编译了一个recent-C++.因此,如果没有暴露std符号,请在旧系统上运行
- 是否可以"unprivate" C++继承中的元素?如果没有怎么办?
- 在C++中加载火炬脚本模型:如果没有ATen_cuda库,则无法初始化 CUDA
- 如果没有 #pragma pop_macro #pragma push_macro 会发生什么?
- 在不放置新运算符的情况下,在预分配的内存上使用虚函数初始化对象 - 这可能吗?如果没有,为什么
- 如果没有带有函数签名的 rvalue 参数,是否会执行 C++ 11 中的移动语义?
- 如果没有指针,如何识别堆栈上的内存?
- 如果没有未定义的行为 [c++],哪些浮点值无法转换为 int?
- 如果没有'&&'语句有效?
- 拥有 std::map 的最佳方式,我可以在其中定义如果没有键时返回的内容
- 如果没有数据,则创建一个包含数据的文本文件,然后读取它以检索数据