草庐IT

unowned-references

全部标签

c++ - 与柯南一起安装的 GTest : undefined reference

我尝试使用通过柯南安装的gtest,但最终出现undefinedreference链接器错误。这个问题或多或少是对thisstackoverflowquestion的跟进。.但我认为提供的例子太简单了。我使用gcc6.3在最新的archlinuxx64下编译。C++版本会不会有些不匹配?或者您对如何解决问题有任何其他想法吗?我将在下面提供我的源代码:目录树:tree.├──CMakeLists.txt├──conanfile.txt└──main.cpp主要.cpp:#include#includeclassTestFixture:public::testing::Test{prote

c++ - 不确定有关 C++ Primer 中 Reference 的描述

书上说:因为引用不是对象,所以我们可以不定义对引用的引用。intival=1024;int&refVal=ival;refVal=2;intii=refVal;int&refVal3=refVal;//isn'tthisadefinitionofreftoref?inti=refVal;int&refVal4=10;doubledval=3.14;int&refVal5=dval;然而,该行不是错误,因为refVal3说它只是refVal的另一个别名,而refVal只是ival的另一个名称(refVal3绑定(bind)到refVal绑定(bind)到的对象,即ival)...所以re

c++ - 哪个更好 : returning tuple or passing arguments to function as references?

我创建的代码中有两个函数returnValues和returnValuesVoid。一个返回2个值的元组,另一个接受参数对函数的引用。#include#includestd::tuplereturnValues(constinta,constintb){returnstd::tuple(a,b);}voidreturnValuesVoid(int&a,int&b){a+=100;b+=100;}intmain(){auto[x,y]=returnValues(10,20);std::cout我读到了http://en.cppreference.com/w/cpp/language/st

c++ - 为什么auto y = reference_to_x的地址和x的地址不一样?

假设您有以下代码:long&fn2(long&another_var1,longanother_var2){another_var1=another_var1+another_var2;another_var2=another_var2+another_var1;returnanother_var1;}intmain(){cout在您到达第2行之前,一切都按预期进行,其中返回false。当你autoresult时,它应该是一个引用变量到another_var1,它是对var1的引用,即它们都应该有相同的地址——它们只是同一内存的别名。查看第1行,返回15,给人一种它们都一样的错觉。然后

c++ - SFINAE 未检测到 T::reference

std::vectorclass是STLContainer概念的模型,因此vector的任何正确实现都必须包含嵌套的typedefvalue_type以及reference.这应该可以使用SFINAE检测到。但是,在我自己的测试中,我可以使用SFINAE来检测嵌套的value_typetypedef,但出于某种原因,我无法检测到reference.templatetypenameT::value_type*test(T){coutvoidtest(...){cout());}输出:Hasnestedtypedef!但是,如果我替换value_type与reference,比如:temp

c++ - 从 C#/Java 到 C++ : Understanding C++ references in an example?

来自C#/Java背景,我正在尝试了解使用C++指针和引用的最佳实践。我敢肯定这已经在这个网站上被令人作呕地覆盖了,但我仍然不完全理解它。我已经阅读了一些C++常见问题解答,但我需要在上下文中查看它。假设我有两个类:classEmployee{Employee();~Employee();}classCompany{Company();~Company();AddEmployee(??employee);??GetEmployee();private:std::listemployees_;}在哪里AddEmployee获取一个员工对象并将其添加到员工的私有(private)列表中。A

c++ - g++ 对 ZMQ 的 undefined reference

我在我工作场所的电脑上开发了我的项目(一切进展顺利),但是当我尝试在我的家用电脑(都是ubuntu12.04)上编译时,我收到以下消息:undefinedreferenceto`zmq_sendmsg'我不明白我错过了什么,因为我看到了这个/usr/local/lib/libzmq.so/usr/local/lib/libzmq.so.3/usr/local/lib/libzmq.so.3.0.0所以我的ZeroMQ安装似乎没问题。有人可以建议我可以检查什么吗? 最佳答案 链接时必须添加-lzmq以便链接器从libzmq中提取函数。

c++ - "non-const lvalue reference to type cannot bind"引用错误(类型&)但指针错误(类型*)

我收到此错误“输入‘Cell’的非常量左值无法使用此代码绑定(bind)到‘Cell*’类型的临时对象:classRegionHolder{public:RegionHolder(Region&Region1):m_RegionCellNOO(&(Region1.m_NOO))~RegionHolder();protected:Cell&m_RegionCellNOO;//differenceishere};但不是这个:classRegionHolder{public:RegionHolder(Region&Region1):m_RegionCellNOO(&(Region1.m_NO

c++ - 与 libcrypto : undefined reference to `__imp__CertFreeCertificateContext' 的链接问题

我正在尝试交叉编译cachecoin使用gitian的Linux主机上的二进制文件和i686-w64-mingw用于Windows目标。编译工作正常,直到依赖项的静态链接的最后一步。这是我得到的:/home/ubuntu/staging32/lib/libcrypto.a(e_capi.o):e_capi.c:(.text+0x1ff):undefinedreferenceto`__imp__CertFreeCertificateContext@4'Google建议它缺少-lcrypto链接甚至-lcrypt32。但是在它失败之前的最后一行中,您可以看到它正在链接两者。这里有什么问题?

c++ - 没有优化的 g++ 4.9 上静态 constexpr 的 undefined reference

我有以下代码:#include#includeusingnamespacestd::chrono_literals;#defineMSG"hello"#defineDUR1000msclassmwe{public:staticconstexprautomsg=MSG;staticconstexprautodur_1=DUR;staticconstexprstd::chrono::millisecondsdur_2=DUR;staticconststd::chrono::millisecondsdur_3;staticconstexprdecltype(DUR)dur_4=DUR;};c