草庐IT

custom-exceptions

全部标签

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++ : How can I solve a first-chance exception caused at an unknown point?

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

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++ - Protocol Buffer : how nested (custom) optional fields are to be handled in C++?

读入ProtocolBufferBasics:C++,没有找到符合情况的东西:;以下.proto处理--cpp_out,messageA{requiredint32foo=1;}messageB{optionalAdata=1;}没有生成明显的访问器/setter来设置自定义可选字段(包括我懒得放在这里的“嵌套类型”部分)://accessors-------------------------------------------------------//optional.A=1;inlineboolhas_a()const;inlinevoidclear_a();staticcon

c++ - MSBuild:VS2010 中 native C++ 项目的 Custom.After.Microsoft.Common.targets

我读过“Custom.Before.Microsoft.Common.targets”和“Custom.After.Microsoft.Common.targets”的使用,以便在每个项目构建之前/之后执行自定义目标,我会喜欢在我们的TeamCity构建服务器上构建时使用此技术来更改版本信息。问题是,虽然它适用于C#项目,但它似乎不适用于nativeC++项目。在深入研究Microsoft.Cpp.targets文件后,我发现对于nativeC++项目,这似乎是通过设置$(ForceImportBeforeCppTargets)和$(ForceImportAfterCppTargets

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

c++ - C++错误代码vs ASSERTS vs Exceptions选项options :( [closed]

Closed.Thisquestionisopinion-based。它当前不接受答案。想要改善这个问题吗?更新问题,以便editingthispost用事实和引用来回答。4年前关闭。ImprovethisquestionCodeInquestion我已经听到(并且反驳)围栏两侧的C++异常口头禅。已经有一段时间了,我只想再次集中我自己,此讨论是特定于我链接的代码(或低级类,例如容器),它是依赖项。我曾经使用C程序员作为防御和error_code,但是这是一种令人厌烦的练习,并且我现在正在以更高的抽象级别进行编程。因此,我正在重写一个容器类(及其依赖项),以使其更灵活,读取效果更好(迭

c++ - CreateEx Causes Unhandled exception 被停用的激活上下文不是最近激活的

itsAnalysisDataTable.CreateEx(WS_EX_CLIENTEDGE,AfxRegisterWndClass(CS_DBLCLKS,LoadCursor(NULL,IDC_ARROW),(HBRUSH)::GetStockObject(NULL_BRUSH),NULL),"AnalysiysTable",WS_CHILD|WS_VISIBLE|WS_VSCROLL|WS_TABSTOP,dialogItemRect,this,IDC_ANALYSIS_DATA_TABLE);这一行花了我两天的时间没有解决。itsAnalysisDataTable是一个自定义窗口

ios - 图片来自 React-Native 中的 custom.xcassets

如果我们想在React-Nativejs中使用来自Images.xcassets的图像,我们只需提供图像名称作为URI-例如。但是如果我们有一个自定义创建的.xcassets呢?如何从RNjs访问该图像集? 最佳答案 它被认为是遗留代码,但可以像这样导入: 关于ios-图片来自React-Native中的custom.xcassets,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions