草庐IT

c++ - 使用 boost 序列化抽象类时出错

我正在尝试序列化我的数据结构,以便将它们写入tcp套接字。到目前为止我发现我的问题是序列化。我什至尝试使用BOOST_SERIALIZATION_ASSUME_ABSTRACT(T)但我找不到任何与我的程序相似的工作示例以及如何正确实现它。以下是我访问过的一些链接:http://programmers-blog.com/category/c-chttp://www.boost.org/doc/libs/1_48_0/libs/serialization/doc/tutorial.html#simplecasehttp://en.highscore.de/cpp/boost/serial

c++ - 如何让 CMake 检查我的 header 是否自给自足?

设置我有一个使用CMake构建和运行良好的项目。我的项目设置是这样的:├──CMakeLists.txt|├──include/│└──standalone/│└──x.hpp|├──src/└──standalone/└──main.cpp我的header的内容是这样的://------x.hpp--------#pragmaonce#includeclassX{public:voidhello(){std::cout}};//-------main.cpp-------#includeintmain(){Xx;x.hello();}我使用以下CMakeLists.txtcmake_

c++ - 为 g++ 永久添加包含路径和共享库

我尝试在终端中用g++编译.cpp文件:g++-omainmain.cpp\-I/usr/include/glib-2.0\-I/usr/include/json-glib-1.0\-I/usr/lib/x86_64-linux-gnu/glib-2.0/include/\-L/usr/lib/x86_64-linux-gnu-ljson-glib-1.0-lglib-2.0而且它有效。但我想添加这些.so库并永久包含g++文件,这样我就不需要每次都输入这些文件。而且我还想让它适用于其他应用程序。我正在使用ubuntu。谁能帮帮我?非常感谢您。 最佳答案

c++ - "<?="运算符的意义

这个问题在这里已经有了答案:What's"(2个答案)关闭8年前。我在Topcoder上查看一个问题的解决方案,遇到了这个问题:http://community.topcoder.com/stat?c=problem_solution&rm=249419&rd=9996&pm=6621&cr=309453目前我没有兴趣知道算法是如何工作的,但是“代码在这里:usingnamespacestd;#include#include#include#include#include#include#include#include#include#include#include#include#i

java - Swig 类型映射将变量地址作为参数传递?

我为以下C++代码创建了JNI包装器。add.hclassMyClass{public:intadd(intx,inty,int&z);intsub(intx,inty);};上面提到的代码就是.h文件添加.cppintMyClass::add(intx,inty,int&sum){sum=x+y;return0;}intMyClass::sub(intx,inty){returnx-y;}swig.i%modulealgo%{#defineSWIG_FILE_WITH_INIT#include"add.h"%}%include"arrays_java.i"%include"typem

c++ - Visual C++ Express 2010 突然不接受#includes

我正在使用一个API,该API已#define编辑了所有包含文件。我正在使用VisualC++2010Express进行开发,到目前为止它一直运行良好。我正在向项目添加一个新的cpp文件,不小心添加了一个“Windows窗体”。VC警告我,我的项目目前没有使用CLR,我真的想要吗?我单击否,并按预期添加了文件。然而,在那之后,我的项目不再编译。代码基本上是这样的:api_header.h:#defineDEFINED_HEADER_NAME"path/to/header/file.h"stdhpf.h:#includeDEFINED_HEADER_NAME正如我所说,很长一段时间都运行

c++ - 标准头文件中的错误

我目前遇到以下错误:c:\programfiles\microsoftvisualstudio\vc98\include\iomanip(15):errorC2059:>syntaxerror:'namespace'c:\programfiles\microsoftvisualstudio\vc98\include\iomanip(15):errorC2334:>unexpectedtoken(s)preceding'{';skippingapparentfunctionbodyc:\programfiles\microsoftvisualstudio\vc98\include\mat

c++ - 如何在大项目中使用#include?

我是否应该在每个头文件/cpp文件中#include我需要的所有内容?我正在研究2d游戏引擎atm(主要用于练习),在审查我的代码时,我意识到我几乎在每个文件中都重复了字符串和vector。这是一个问题吗?我该如何处理?我一直认为,您编写的每个类或模块都应该靠自己的两条腿站立,可以这么说。我真的很喜欢泛型编程(我在引擎中包含了我自己的脚本语言,用我自己起草的脚本引擎)但我也意识到它可能会导致大量开销和困惑。 最佳答案 我会坚持包括和仅在必要时。至于确保各个头文件独立存在,我喜欢GoogleC++风格指南处理includeorder的

c++ - QML 与 C++ 通信

我在QML与C++通信时遇到问题。我已经按照预期使示例代码正常运行的所有步骤进行了操作。在处理这个小示例几个小时后,它归结为一条错误消息,我根本无法摆脱它:./input/main.cpp:18:error:nomatchingfunctionforcallto'QObject::connect(QObject*&,constchar*,Input*,constchar*)'&input,SLOT(cppSlot(QString)));^我在relatedproblem上阅读了一些以前的帖子,仔细检查所有内容,显然一切看起来都是正确的。以下是详细信息:./Sources/main.cp

c++ - 需要更改 clang 的包含路径

当用clang构建时,它似乎使用gcc4.4.4版本的包含文件,而我希望它使用更新的。[~]locatemove.h/home/apps/gcc_versions/gcc-4_8_install/include/c++/4.8.3/bits/move.h/usr/include/c++/4.4.4/bits/move.h/usr/local/include/c++/4.7.1/bits/move.hgcc路径:`gcc-print-prog-name=cc1plus`-vignoringnonexistentdirectory"/apps/gcc_versions/gcc-4_8_in