草庐IT

libc_test

全部标签

c++ - 带有 libc++ 异常的 Clang

我一直在试验不同的C++库,并发现了以下内容:简单的应用:#includeintmain(intargc,char*argv[]){try{throw1;}catch(...){std::cout当我像这样在ARM上编译它时:clang++-stdlib=stdlibc++如预期的那样捕获了异常。但是当我把它改成:clang++-stdlib=libc++我不断得到:terminatingwithuncaughtexceptionoftypeintAborted我尝试使用各种标志显式打开异常,例如:-fexceptions-fcxx-exceptions-frtti但是这些标志都不起作

c++ - 使用 lambda 构造 std::function 时 libstdc++ 和 libc++ 之间的不同行为

这个问题来自thisquestion.以下代码compilesfine将clang3.4与libstdc++结合使用:#includeintmain(){std::functionf=[](){};}但是failsmiserably使用clang3.4和libc++:Infileincludedfrommain.cpp:1:Infileincludedfrom/usr/include/c++/v1/functional:465:Infileincludedfrom/usr/include/c++/v1/memory:599:/usr/include/c++/v1/tuple:320:1

c++ - 如何在 Xcode 中追踪 "libc++abi.dylib: Pure virtual function called!"

我有一个混合使用C++、Objective-C和Swift的多线程OSX应用程序。当我的应用程序关闭时,我在Xcode调试器窗口中看到:libc++abi.dylib:Purevirtualfunctioncalled!我知道这个错误通常是由在C++类构造函数或析构函数中调用虚函数引起的。有没有简单的方法可以找到它的位置?我所说的“简单”是指“不分析每个具有虚函数的类的每个构造函数和析构函数的每一行的调用树”。我没有看到堆栈跟踪。打印此消息时,调试器不会停止程序。从我的应用委托(delegate)的applicationDidTerminate方法记录的消息在此消息之前。我尝试在“所有

c++ - 使用包含不完整类型的 `boost::variant` 递归定义和访问 `std::vector` - libstdc++ 与 libc++

我正在尝试定义和访问“递归”boost::variant使用incomplete包装类和std::vector作为我的间接技巧。我的实现适用于libstdc++,但不适用于libc++。这是我定义变体的方式:structmy_variant_wrapper;usingmy_variant_array=std::vector;//;structmy_variant_wrapper{my_variant_v;templatemy_variant_wrapper(Ts&&...xs):_v(std::forward(xs)...){}};我正在使用std::vector引入间接(以便动态分配

c++ - 使用 boost::test 进行内存泄漏检测

我尝试使用行号启用msvc内存泄漏检测,就像我发现的这个片段here:Detectedmemoryleaks!Dumpingobjects->C:\PROGRAMFILES\VISUALSTUDIO\MyProjects\leaktest\leaktest.cpp(20):{18}normalblockat0x00780E80,64byteslong.Data:CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDObjectdumpcomplete.我尝试设置预处理器定义_CRTDBG_MAP_ALLOC手动在项目属性中,但我只得到这个:Dumpingobjects->{1

c++ - 使用 Google Test 调试 C++ 项目时禁用异常处理

我有我的(nativeC++)DLL项目和基于GoogleTest的相应测试EXE项目。通过此EXE调试我的DLL时,GoogleTest会自动处理异常。因此,如果我的DLL在调试期间抛出未处理的异常,我希望看到来自VisualStudio的错误消息,其中调试session在代码导致异常后暂停。相反,我在gtest.cc中触发了断点。如果我禁用--gtest_break_on_failure标志,我将不会收到任何中断。我在Google测试文档中找不到这样的选项。我错过了吗?我不想在调试设置中检查不同异常的“抛出时中断”标志,因为我只对未处理的异常感兴趣。 最

c++ - CMake:如何添加具有相对目录的 Boost.Test 用例?

我有一个使用CMake和Boost.Test的工作项目,其目录结构如下(请原谅ASCII艺术):+-proj|---CMakeLists.txt|---build|---test|\----dir1|\----foo.cpp//containsoneBOOST_AUTO_TEST_SUITEandseveralBOOST_AUTO_TEST_CASE||---bar.cpp//containsoneBOOST_AUTO_TEST_SUITEandseveralBOOST_AUTO_TEST_CASE\----dir2\----foo.cpp//containsoneBOOST_AUTO

openssl3.2 - 测试程序的学习 - test\sanitytest.c

文章目录openssl3.2-测试程序的学习-test\sanitytest.c概述笔记添加好实现的工程效果ENDopenssl3.2-测试程序的学习-test\sanitytest.c概述openssl3.2-测试程序的学习重建工程参考makefile,将该加的实现加入vs2019工程,不能无脑添加,否则编译不过.这个工程是基础测试(数据类型啥的),没学到东西.笔记从makefile中找到的实现添加线索:/*Getcurrenttime*/OSSL_TIMEossl_time_now(void);test\sanitytest-bin-sanitytest.obj:test\sanityte

c++ - 比较 Google Test 或 Google Mock 中的特征矩阵

我想知道有没有好的方法可以测试两个Eigen使用GoogleTest的近似相等矩阵,或GoogleMock.将以下测试用例作为简化示例:我将两个复值矩阵A和B相乘,并期望某个结果C_expect。我使用Eigen计算数值结果C_actual=A*B。现在,我想比较C_expect和C_actual。现在,相应的代码如下所示:#include#include#include#includetypedefstd::complexComplex;typedefEigen::Matrix2cdMatrix;TEST(Eigen,MatrixMultiplication){MatrixA,B,C

ios - 段错误 : 11 when running tests (XCode 8, Swift 2.3)

自从将我的混合Swift和Objective-c项目移动到带有Swift2.3的XCode8后,我每次在对任何项目进行更改后运行测试时都会收到“由于信号导致命令失败:段错误:11”的错误测试文件。当我点击错误以获取更多信息时,我看到::1:9:note:infileincludedfrom:1:#import"Headers/Utilities.h"^/Users/.../Utilities.framework/Headers/Utilities.h:18:9:error:includeofnon-modularheaderinsideframeworkmodule'Utilities