草庐IT

EXCEPTION_STACK_OVERFLOW

全部标签

c++ - 获取 boost::exception 的 what() 消息

在下面的代码中,我想获取boost::exception的what()消息。#include#include#includeintmain(void){try{inti(boost::lexical_cast("42X"));}catch(boost::exceptionconst&e){std::cout当我运行它时,我收到消息:Exception:Throwlocationunknown(considerusingBOOST_THROW_EXCEPTION)Dynamicexceptiontype:boost::exception_detail::clone_impl>但是当我没有

c++ - std::exception_ptr 线程安全吗?

我有一个工作线程,它通过std::thread持续运行、创建和管理。在我的工作线程的顶层,我有一个try/catchblock,里面有一个while循环。如果异常泄漏到线程的顶层,我会捕获它并将其存储在std::exception_ptr中,它是还拥有非静态线程函数的类的成员://Inclassheader(insideclassdeclaration)std::exception_ptrm_threadException;//InclassCPPfilevoidMyClass::MyThreadFunction(){try{while(true){//Dothreadstuff}}c

C++ googlemocks : Getting a stack trace of an uninitialized call

模拟类看起来像这样:构造模拟类{MOCK_METHOD0(foo,void());};如果我忘记在模拟对象上设置预期的调用,我会得到这样的结果:GMOCKWARNING:Uninterestingmockfunctioncall-returningdirectly.Functioncall:foo()Stacktrace:并且堆栈跟踪为空。那么,为了获取堆栈跟踪必须做什么? 最佳答案 这描述了here:YoucancontrolhowmuchGoogleMocktellsyouusingthe--gmock_verbose=LEVE

C++ : How can I solve a first-chance exception caused at an unknown point?

我正在处理的一个C++项目在抛出第一次异常时终止。当我第一次尝试访问map,int>时,这发生在处于Debug模式的VisualStudio2008中其中包含单个键值对。代码在逻辑上没有任何错误。我已经阅读了有关第一次机会异常的信息,并且了解它们可能并不总是有问题。尽管如此,我尝试打破所有此类异常,并且正如预期的那样发现生成了几个不会导致问题的异常。我正在处理的类非常大并且包含许多自定义内存分配。我推测其中之一以某种方式导致了问题。然而,我花了几个小时试图找到一种方法来确定问题出在哪里,但一直无法做到。下面列出了第一次异常输出。这不是很有帮助!First-chanceexception

c++ - gcc "overflow in expression"而等效等效表达式工作正常

这是我的代码#includestaticconstunsignedlonglongintxx=(36*36*36*36)*(36*36*36*36);staticconstunsignedlonglonginty=36*36*36*36;staticconstunsignedlonglongintyy=y*y;intmain(){std::cout这是编译输出#g++-std=c++11test.cpp-otesttest.cpp:2:62:warning:integeroverflowinexpression[-Woverflow]staticconstunsignedlonglon

c++ - 如何保证在 Visual Studio 2005 下的 C++ 中捕获 EXCEPTION_STACK_OVERFLOW 结构化异常?

背景我有一个带有Poof-Crash[1]的应用程序。我相当确定这是由于堆栈损坏造成的。应用程序是多线程的。我正在使用“启用C++异常:是的,带有SEH异常(/EHa)”进行编译。我编写了一个SE翻译器函数并用它调用了_set_se_translator()。我已经为set_terminate()和set_unexpected()编写了函数并进行了设置。为了获得StackOverflow,我必须在高负载下以Release模式运行几天。在调试器下运行不是一种选择,因为应用程序的执行速度不足以达到查看问题所需的运行时间。我可以通过在执行其中一个函数时添加无限递归来模拟该问题,从而测试是否捕

c++ - 为什么我不能创建 std::ifstreams 的 std::stack?

为什么以下不起作用:#include#include#includestd::stacks;-PT 最佳答案 std::stack(与所有STL容器一样)要求其包含的类型是“可分配的”。在STL中,这意味着它必须有一个复制构造函数和一个operator=。std::ifstream没有这些。您可以想象为什么您不希望能够复制和分配I/O流;当同一个流有两个拷贝时应该发生什么的语义并不明显。读取或写入一个拷贝是否会影响另一个拷贝的位置?关闭一个流应该关闭另一个吗?等如果你想要“一个std::ifstream的容器”,那么你真正应该做的是

图灵之旅--ArrayList&顺序表&LinkedList&链表&&栈&&Stack&&队列&&Queue

目录线性表顺序表ArrayList简介ArrayList使用ArrayList的构造ArrayList常见操作ArrayList的遍历ArrayList的扩容机制利用ArrayList洗牌ArrayList的优缺点链表链表的实现双向链表的实现LinkedListLinkedList引入LinkedList的使用LinkedList的构造LinkedList的常用方法介绍LinkedList的遍历ArrayList和LinkedList的区别栈概念栈的使用栈的模拟实现概念区分队列概念队列使用队列模拟实现循环队列双端队列用队列实现栈用栈实现队列线性表线性表是n个具有相同特性的数据元素的有限序列.线

c++ - 错误 : pure virtual method called - terminate called without an active exception - Aborted

在我的A.h文件中:classA{private:unsignedshortPC;public:A():PC(0){}virtual~A(){}virtualvoidexecute(unsignedshortPC)=0;};在我的B.h文件中:classB:publicA{private:intstatus;boolexe;public:B:status(0),exe(false){}virtualB(){}voidexecute(unsignedshortPC);};在我的B.cpp文件中:#include#include"B.h"voidB::execute(unsignedsho

鸿蒙Harmony-层叠布局(Stack)详解

我们总是为了太多遥不可及的东西去拼命,却忘了人生真正的幸福不过是灯火阑珊处的温暖,柴米油盐的充实,人生无论你赚的钱,是多还是少,经历的事情是好还是坏,都不如过好当下的每一天! 目录一,定义二,开发布局三,对齐方式3.1 TopStart顶部起始端 3.2 Top顶部横向居中3.3 TopEnd顶部尾端3.4 Start起始端纵向居中3.5 Center横向和纵向居中3.6 End尾端纵向居中3.7 BottomStart底部起始端3.8 Bottom底部横向居中3.9 BottomEnd底部尾端四,Z序控制一,定义层叠布局(StackLayout)用于在屏幕上预留一块区域来显示组件中的元素,提