草庐IT

Out-Null

全部标签

c++ - lua_open 使用 luaJIT 返回 null

使用最近的luaJITlua_open返回null。常规lua库不会发生这种情况。lua_State*L=lua_open();std::cout输出:0x0如何让luaJIT工作?中南合作:#include#include//linkedlibrary:libluajit-5.1.aintmain(intargc,constchar*argv[]){lua_State*L=luaL_newstate();//lua_open();std::cout附加信息:使用make和makeinstall从源代码构建在OSX10.9上(尝试了2.0.2和git)。使用编译器:$cc--versi

c++ - 为什么函数模板不理解 NULL 但可以使用 nullptr?

我有一个函数intf(std::shared_ptrsptr);之后,我编写了以下模板,以便能够调用它(和其他一些)函数:templateautocall(Funcfunc,ArgTypearg)->decltype(func(arg)){returnfunc(arg);}当我尝试将此模板与NULL一起使用时,为什么在第三行出现错误?autor0=f(0);//OKautor1=call(f,nullptr);//OKautor2=call(f,NULL);//ERROR!WHY??1>------Buildstarted:Project:ConsoleApplication1,Con

c++ - 是否编译了带有 if(this==NULL) 测试的类函数?

我在我们的实验中看到了这段代码片段,它实际上是在MSVC2008和G++中编译的。voidLinkList::Insert(Tn){if(this==NULL)//somecodehere}据我所知,this不能为null,因为如果未实例化,则不能在C++中调用类函数。这是一个有效的代码吗?如果是这样,背后的原因是什么?它可以用在什么地方? 最佳答案 sinceyoucannotcallaclassfunctionsinc++ifitwasn'tinstantiated问题是,你可以,但它leadstoundefinedbehavi

c++ - 'giving out' 是构造函数中对 'this' 的引用吗?

我的代码:Scene::Scene(conststd::string&scene_file):ambient_light(0,0,0),background(0,0,0){scene_parserparser(*this);parser.parse(scene_file);}scene_parser是Scene的friend,在parse方法中它访问(r/w)Scene的成员。这会导致任何问题吗? 最佳答案 是的,给出对this的引用是可以的。但是,您通常希望在其他对象稍后使用该指针时执行此操作。您的用例看起来会在构造函数完成之前立

c++ - 如何在中等规模的项目中诊断 g++ 错误 "cc1plus.exe: out of memory allocating 838860800 bytes"?

这个问题在这里已经有了答案:Running'gcc'onC++sourcefileonLinuxgives"cc1plus:outofmemoryallocating..."errormessage(2个答案)关闭6年前。我正在尝试移植我的C++library使用基本的g++makefile(它在VisualStudio中编译得很好)。我现在尝试编译的部分大约有45000行代码。库本身编译正常,但是当我尝试将它包含到控制台界面应用程序中时,编译器崩溃并显示以下消息,没有其他消息:cc1plus.exe:outofmemoryallocating838860800bytes当我包含项目的

C++:即使被转换的对象不是 NULL,dynamic_cast 也会导致 SEGFAULT。怎么会这样?

假设我有一个类A和一个派生自A的类B。现在,我想使用dynamic_cast(见下文)将constA*(称为“a”)转换为B*。如果“a”真的是B*,那么我得到的对象指针应该没问题。如果“a”不是B*,那么我将得到NULL。constA*a=newB();constB*b=dynamic_cast(a);出于某种原因,dynamic_cast操作会导致SEGFAULT。如果“a”不是NULL,那怎么会发生呢?我想如果有任何转换问题,dynamic_cast会给我一个NULL指针,而不是SEGFAULT。如果我试图访问“b”并且动态转换不成功,我应该只得到一个SEGFAULT,对吗?我什

c++ - 取消引用 NULL 指针是否保证使 C/C++ 中的程序崩溃?

我遇到了这个有线代码,它没有崩溃。#includestructs{char*c;char*c2;};intmain(){structs*p=NULL;printf("%d\n",&(p->c));printf("%d\n",&p->c2);printf("%d\n",&(*p).c2);return0;}输出:044我有几个问题无法回答:在c/c++中NULL指针总是等于0吗?如果0恰好是一个变量的地址会怎样?输出似乎是结构成员的偏移地址。这个是怎么算出来的。我的意思是p->c是c的地址,它不存在,因为p==NULL。如果c的地址不存在,怎么能通过&p->c得到c的地址呢?取消引用NU

c++ - 避免 std::bad_alloc。 new 应该返回一个 NULL 指针

我将一个中型应用程序从C移植到C++。它不会在任何地方处理异常,这一点不应该改变。我(错误!)对C++的理解是(直到我昨天艰难地学习它)(默认)new运算符在出现分配问题时返回NULL指针。然而,直到1993年(左右)才出现这种情况。现在,它抛出一个std::bad_alloc异常。是否可以在不重写所有内容以在每次调用时使用std::nothrow的情况下返回到旧行为? 最佳答案 你可以重载operatornew:#includevoid*operatornew(size_tpAmount)//throw(std::bad_allo

已解决:Connection timed out: connect. If you are behind an HTTP proxy, please configure the proxy

安装了新版AndroidStudio,开始跑一个项目时,出了如下错误:Connectiontimedout:connect.IfyouarebehindanHTTPproxy,pleaseconfiguretheproxysetting意思是连接超时:连接。如果您在HTTP代理之后,请配置代理设置看了网上的几种解决方案,都没有太适合的,于是自己在设置中,,搞了一下代理(改了一下,之后在下方检查连接也是没有问题的,显示successful),解决问题。贴一下:大连东软信息学院镜像服务器地址:http://mirrors.neusoft.edu.cn端口:80

解决 Git:ssh: connect to host github.com port 22: Connection timed out 问题的三种方案

1、问题描述:其一、整体提示为:ssh:connecttohostgithub.comport22:Connectiontimedoutfatal:Couldnotreadfromremoterepository.中文为:ssh:连接到主机github.com端口22:连接超时fatal:无法从远程存储库读取其二、问题描述为:A、正常的将代码提交到git仓库的过程:step1、找到要提交git的代码的地址:xxxxxxxx@ubuntu:~/work/frs_stp/frs$step2、查看当前分支的命令:gitbranch//注意此时的分支就是:dev-xxxxxxxx即:xxxxxxxx@