草庐IT

lldb_init_module

全部标签

c++ - OpenCV 错误:cv::cvtColor 中的断言失败 (scn == 3 || scn == 4),文件 ..\..\..\..\opencv\modules\imgproc\src\color.cpp,第 3737 行

您好,我正在尝试从OpenCV运行此示例代码:#include"opencv2\opencv.hpp"usingnamespacecv;intmain(int,char**){VideoCapturecap(0);//openthedefaultcameraif(!cap.isOpened())//checkifwesucceededreturn-1;Matedges;namedWindow("edges",1);for(;;){Matframe;cap>>frame;//getanewframefromcameracvtColor(frame,edges,CV_BGR2GRAY);G

kotlin - 在 init block 中如何处理被覆盖的属性?

我试图理解为什么会抛出以下代码:openclassBase(openvalinput:String){lateinitvarderived:Stringinit{derived=input.toUpperCase()//throws!}}classSub(overridevalinput:String):Base(input)当像这样调用这段代码时:println(Sub("test").derived)它抛出异常,因为在调用toUpperCase时,input解析为null。我发现这个反直觉:我将一个非空值传递给主构造函数,但在父类(superclass)的initblock中它解析

kotlin - 在 init block 中如何处理被覆盖的属性?

我试图理解为什么会抛出以下代码:openclassBase(openvalinput:String){lateinitvarderived:Stringinit{derived=input.toUpperCase()//throws!}}classSub(overridevalinput:String):Base(input)当像这样调用这段代码时:println(Sub("test").derived)它抛出异常,因为在调用toUpperCase时,input解析为null。我发现这个反直觉:我将一个非空值传递给主构造函数,但在父类(superclass)的initblock中它解析

c++ - SDL Video Init 在 Mac OS X 10.8 上导致异常

我刚刚将我的C++游戏移植到OSX,它第一次运行时,我在尝试调用SDL_SetVideoMode时遇到以下异常。2012-09-2815:01:05.437SCRAsteroids[28595:707]*由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“错误(1000)在第259行创建CGSWindow”*首先抛出调用栈:(0CoreFoundation0x00007fff8b53b716__exceptionPreprocess+1981libobjc.A.dylib0x00007fff90e30470objc_excepti

c++ - 使用 ATOMIC_FLAG_INIT 和 std::atomic_flag::clear 有什么区别

下面两段代码是否相同:std::atomic_flaglock=ATOMIC_FLAG_INIT;和std::atomic_flaglock;lock.clear();似乎第二个可以允许点击几下锁定处于未知状态第一个代码片段是否始终具有已知状态? 最佳答案 ATOMIC_FLAG_INIT是一个实现定义的宏,保证可以像您发布的那样在表达式中工作。例如,它可以方便地初始化您可能在命名空间范围内定义的atomic_flag。它还保证标志将被清除,并且如果标志本身具有静态存储持续时间,则初始化也将是静态的。第二组语句是初始化,然后清除标志

c++ - Visual Studio : compile list of modules on each platform and configuration

我正在从事一个巨大的C++项目,该项目针对许多平台,每个平台都有多种配置。由于编译时间长,在每个平台上构建整个项目以测试更改是否成功编译不是一种选择。我通常做的是编译我在不同平台/配置组合上修改的单个cpp模块。我想自动执行此过程,无论是使用脚本、VS扩展还是其他任何方式,我都愿意评估不同的选项。我真正需要的是为每个平台和每个配置获取一个cpp文件列表并编译每个文件(基本上遍历配置管理器的所有组合)。这可能吗?关于如何解决这个问题有什么好的建议吗?编辑:我知道这远不是一个完美的解决方案,并且只会发现一部分错误。我仍将不得不面对链接错误、其他cpp单元上的编译器错误取决于修改后的head

c++ - LLDB:列出源代码

我最常用的gdb命令是l,然后是n,然后是l-。我怎样才能在lldb中得到相同的东西?我不满足于必须键入一些行号才能看到某处的代码。在将大量变量转储到终端后,我想看看我在代码中的位置。我曾经使用l-返回查看我在哪里,因为随后调用l会向下滚动(lldb也这样做,但关键不是响应l-)。也许我遗漏了一些东西,并且有某种“模式”我可以将其放入,它将始终在单独的缓冲区中显示相应的源位置。那会很好,但我什至没有要求。 最佳答案 在Xcode4.6中,lldb的l别名是sourcelist的简单快捷方式。在源代码树的顶部,这已经得到改进,表现得更

c++ - 什么是 "recursive_init_error"异常?

我决定用计算的goto和局部静态做一个测试voidg(){std::cout我想看看输出是否是“initinit!”。但令我惊讶的是,我没有得到那个输出,而是GCC优雅地处理了它,在运行时输出:initterminatedbyrecursive_init_error:exception那个异常(exception)是什么?它是标准异常吗?C++03还是C++0x?感谢您的任何解释。 最佳答案 这是由C++03§6.7/4中所述引起的:...Otherwisesuchanobjectisinitializedthefirsttimec

c++ - 如何更改 CLion 使用的 LLDB 版本?

TL;DR:我想将CLion(v2016.3.5)使用的LLDB版本更改为LLDBv3.8.1。我可以这样做吗?如果是这样,如何?问题的详细解释:CLion是我已经使用了几年的C++IDE。最近,他们发布了2016.3.X版本。当他们从2016.2到2016.3时,他们将“内置lldb”版本从v3.8.1更改为v3.9.0。这给我带来了一个问题,因为v3.9.0似乎不想正常工作。当我说“打印some_var_name”(在断点处)时,我得到一个错误(如下):Assertionfailed:(D->getCachedLinkage()==LV.getLinkage()),function

c++ - boost 测试不 init_unit_test_suite

我运行这段代码#defineBOOST_TEST_MAIN#defineBOOST_TEST_DYN_LINK#include#include#include#includeusingnamespaceboost::unit_test;usingnamespacestd;voidTestFoo(){BOOST_CHECK(0==0);}test_suite*init_unit_test_suite(intargc,char*argv[]){std::coutadd(BOOST_TEST_CASE(&TestFoo));returnmaster_test_suite;}但是在运行时它说T