草庐IT

performance-reference

全部标签

c++ - 对 `JNI_CreateJavaVM' linux 的 undefined reference

我正在尝试熟悉JNIAPI,但无法编译示例C++程序。这是我用来编译的命令,下面是我要编译的程序。我得到的错误是:/tmp/cczyqqyL.o:Infunction`main':/home/nc/Desktop/jni/simple/ctojava/callJava.cpp:16:undefinedreferenceto`JNI_CreateJavaVM'编译:g++-g-I/usr/lib/jvm/java-7-oracle/include/-I/usr/lib/jvm/java-7-oracle/include/linux/-L/usr/bin/java-L/usr/lib/jv

c++ - 为什么 std::hash 不专用于 std::reference_wrapper?

我以为会是这样,但我在我的标准库实现(gcc-4.8.2)中找不到它。为什么std::hash还没有专门用于std::reference_wrapper?#pragmaonce#includenamespacestd{templatestructhash>{size_toperator()(constreference_wrapper&r)const{returnstd::hash()(r.get());}};} 最佳答案 std::reference_wrapper主要用于在默认复制值的实用程序中提供引用语义,例如std::bin

c++ - 带有 O2 的 clang++ 的 undefined reference

我在一个项目上尝试CLang3.4和libc++,但在Release模式下出现奇怪的链接错误:/home/wichtounet/dev/eddic/src/ast/Operator.cpp:17:error:undefinedreferenceto'std::__1::basic_ostream>&std::__1::operator,std::__1::allocator>(std::__1::basic_ostream>&,std::__1::basic_string,std::__1::allocator>const&)'clang:error:linkercommandfail

c++ - 铿锵错误 : non-type template argument refers to function that does not have linkage -- bug?

我有一些非常简单的(C++11)代码,最新的clang(version3.4trunk187493)无法编译,但GCC编译正常。代码(下面)实例化函数模板foo使用局部函数类型Bar然后尝试将其地址用作类模板Func的非类型模板参数:templatestructFunc{};templateexterninlinevoidfoo(){usingFoo=Func>;}intmain(){structBar{};//function-localtypefoo();return0;}clang发出以下错误:error:non-typetemplateargumentreferstofunct

c++ - std::reference_wrapper 是否应该包含默认比较器 "<"运算符?

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter为指导。9年前关闭。STL使用“小于”作为默认比较器。对用reference_wrapper包裹的对象的STL比较器调用doesnotcompile,即使基础类定义了“看来,这是因为有noimplicitconversion当LHS.operatorusingafreeversion当比较器工作时。但是,如果reference_wrapper提供了“我在reference_wr

c++ - 重载运算符 : const vs non-const return type : any difference of performance?

如果我们去维基百科article关于C++运算符,我们有一个例子:Addition:a+b->TT::operator+(constT&b)const;因此运算符返回类型为T的非常量。如果我们看这个guideline作者说返回类型应该是const以避免以下语法:(a+b)=c现在假设我不介意这种语法,并考虑a和b是大数组。从“纯”性能的角度来看,返回类型中缺少const关键字是否会阻止编译器的优化(g++和带有-O3的英特尔icpc)?如果答案是"is",为什么? 最佳答案 这是一个有趣的问题。在C++03中,没有更好的机会使用这两

java - OpenGL : performance in C++ (NDK) vs Java (Dalvik) 中的 Android 专用游戏

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭9年前。Improvethisquestion我知道以前有人问过类似的问题,但是...我们想开发(至少希望)一款独立游戏,但仍然是一款具有高质量图形的游戏,屏幕上有成百上千个移动物体,因此我们期望有非常多的多边形和hittest需求,也许还有一些AI.我知道java的基本问题是垃圾收集。但这不是问题,我们计划在游戏开始前分配所有需要的内存,对于transient对象我们将使用池化(因此在游戏循环中永远不会写入new关键字)。我们计划使用此处提到的所有

c++ - 错误 : Qualifiers dropped in binding reference of type x to initializer of type y

为什么下面会抛出这个错误:IntelliSense:qualifiersdroppedinbindingreferenceoftype"string&"toinitializeroftype"conststring".hclassA{public:wstring&GetTitle()const;private:wstringtitle;};.cppwstring&GetTitle()const{returnthis->title;}如果我删除const词,它就会停止提示,但我从未对变量进行任何更改? 最佳答案 通过返回对类成员的非c

c++ - 为 std::reference_wrapper 赋值

我们如何为std::reference_wrapper包装的项目赋值?inta[]={0,1,2,3,4};std::vector>v(a,a+5);v[0]=1234;//Error,cannotassignvalue!根据错误,删除了直接赋值:error:useofdeletedfunction'std::reference_wrapper::reference_wrapper(_Tp&&)[with_Tp=int]' 最佳答案 使用get()成员函数:v[0].get()=1111;//okHere是std::referenc

c++ - 对 staticMetaObject 的 undefined reference

看起来Qt没有处理Q_GADGET宏正确,因为我收到以下错误。有人知道为什么吗?错误:对“Exception::staticMetaObject”的undefinedreference编辑:后来我发现MOC不生成moc_exception.cpp。有时当我切换编译器工具包时它编译得很好但是如果我添加另一个继承异常的类,它又不起作用。问题需要出在MOC中的某个地方,它在某些情况下忽略了Q_GADGET宏?我有Qt5.5.0。project.proCONFIG+=c++11QT+=coreQT-=guiSOURCES+=\main.cppHEADERS+=\nobject.h\except