草庐IT

AMQP-CPP

全部标签

c++ - 多个 cpp 文件的一个 header

假设我有3个cpp文件:Main.cppFirst.cppSecond.cpp现在我想在Main中使用First和Second中的函数。如果我只为cpp文件及其函数使用一个头文件,还有什么可提示的吗?在First中使用头文件时会不会有任何问题,因为我需要FirstinFirst中的Second函数? 最佳答案 只要你关注ODR-OneDefinitionRule并且每个声明都是一致的,你会没事的。header通常旨在为函数和其他内容提供声明,链接阶段(除非有更多涉及的内容,如模板)将负责解决这些依赖关系。我没有对设计发表任何看法-提

c++ - 保持 cpp 文件和头文件同步的最佳工作流程是什么?

我正在尝试学习用于Qt开发的C++,但我有点害怕头文件。我想知道的是,保持*.cpp和*.h文件同步的最佳工作流程是什么?例如,编写类文件然后将相关信息复制到标题中是规范吗?抱歉,如果这没有任何意义......我只是在为此寻找一个高效的工作流程。谢谢!贾斯汀 最佳答案 Forexample,isthenormtowritetheclassfileandthencopytherelevantinfoovertotheheader?虽然没有单一的标准方法,但通常最好:首先考虑公共(public)接口(interface)把它放在标题中相

c++ - Visual Studio 2010 将 .cpp 文件编译为 .c 文件

我正在开发一个使用CMake生成的VisualStudio解决方案(不确定这是否相关)。这个解决方案中有一个c文件,我想把它改成cpp文件,所以我重命名了它并更改了扩展名。但是,VisualStudio仍然将其视为c文件,每当我添加任何c++样式代码时都会出现编译器错误。我被卡住了,任何建议将不胜感激。 最佳答案 项目属性,配置,C/C++,高级,更改“编译为”。 关于c++-VisualStudio2010将.cpp文件编译为.c文件,我们在StackOverflow上找到一个类似的问

c++ - 在 gradle 中配置 cpp 源

我已经在Qt之上建立了一个项目(所以源代码是用C++编写的),我想尝试使用Gradle在其上自动构建。我花了一些时间来了解配置多项目构建的细节(有一个可执行文件和两个库),现在我试图告诉cpp-exe和cpp-lib插件我的源代码树的结构。我已经设置了一个打印所有源集的任务(至少应该有默认的,对吗?)它看起来像这样:taskprojectinfo{description="Informationsaboutthecurrentproject"group=INFORMATIONS_GROUPdoFirst{task->print("""${task.project.sourceSets.

c++ - 对 `boost::chrono::system_clock::now()' 的 undefined reference - Boost 和 cpp-netlib

我来这里是为了解决让我感到沮丧的情况。很多。首先,我在Windows上,我使用MinGW作为编译器(C++)。我在让程序使用cpp-netlib和SSL(尝试发布到https站点)时遇到了一些问题。我相信一切都井井有条,除了这个一直在逃避我的错误。C:\boost_1_50_0\boost_1_50_0\stage\lib\libboost_thread-mgw46-mt-1_50.a(thread.o):thread.cpp||对“boost::chrono::system_clock::now()”的undefinedreference我确信我已经链接到chrono,以及BOOST

c++ - 制作一个 cpp 排序的元组

这是std::make_tuple的代码在标准库中。templateinlinetuple::__type...>make_tuple(_Elements&&...__args){typedeftuple::__type...>__result_type;return__result_type(std::forward(__args)...);}我想做的是对__args进行排序在创建元组之前,大概使用std::sort(...,Comparecomp)用户传入一个适当的比较器,该比较器可用于对__args中最终出现的任何类型的事物进行排序。但是,我对cpp比较陌生,这个函数的一半代码我

节点CPP扩展线程

大家尝试编写动态库的第一个节点扩展名(“/usr/local/lib/libkdriveexpress.so”)此扩展应连接到设备并接收数据。在接收到的数据上,它应该从JavaScript回电。我找到了如何存储持久函数,因此从CPP调用JS函数并没有问题。在此示例中,我仅使用简单的C++函数,只是JS的问题除外///voidtest(constuint8_t*t*m,uint32_tt*m_len,void*user_data){kdrive_logger_ex(KDRIVE_LOGGER_ERROR,"kdrive:eventcallback");};voidap_open_ip(const

c++ - CPP 字符串的字符串分词器?

我想对CPP字符串使用字符串分词器,但我只能找到Char*。CPP字符串有没有类似的东西? 最佳答案 “token”是什么意思?如果它是由任何空格分隔的东西,字符串流就是你想要的:std::istringstreamiss("blahwrxglbxrcy")for(;;){std::stringtoken;if(!(iss>>token))break;process(token);}if(!iss.eof())report_error();或者,如果您要寻找某个单独的分隔符,您可以将iss>>token替换为std::getline

c++ - *** 没有规则使目标 'class.cpp' 需要 `build/....x86/class.o` 停止。 Ubuntu 中的错误

我在尝试构建和编译我的程序时遇到了这个错误。现在我无法在程序中打开所有.cpp文件。make[2]:*NoruletomaketargetChecker.cpp',neededbybuild/Debug/GNU-Linux-x86/Checker.o'.Stop.谁能帮我解决这个问题?我检查了所有在线资源,但似乎找不到解决方案。我迫切需要解决这个问题。感谢您提供的任何帮助。 最佳答案 如果此处没有要制作的文件(Checker.cpp),则会出现此错误。大概有以下几个原因:你的当前目录不是你的文件所在的目录居住。文件可能已移至其他地方

c++ - main.cpp 是必需的吗?

我试图用cmake编译一个程序,最后我删除了我的main.cpp文件,我刚刚将其复合到另一个文件中,该文件包含我的项目名称(即,我只是将主要功能剪切并粘贴到该文件中)。问题是我得到了main.cpp未发现错误,不确定是否在C++中一个名为main.cpp的文件是必需的,或者我可以拥有一个包含函数main的不同标题的文件吗?编辑我应该注意,我已经删除了对main的任何规范并重新编译了这个程序。 最佳答案 不,您不需要名为main.cpp的文件。除非您正在构建应用程序,否则不需要包含main()的文件。也就是说,如果您只是构建函数库或独