草庐IT

c++ - Eigen C++ 库给出 C++ 11 选项的错误

我有以下使用EigenC++库的C++代码。#include"Dense"#includeintmain(){Eigen::MatrixXfx(10,10);x.setRandom();std::cout当我使用“-std=gnu++11”尝试g++时,出现以下错误。Infileincludedfrom/usr/include/c++/4.8/tuple:39:0,from/usr/include/c++/4.8/functional:55,from../SP_ToolBox/ExternalLibraries/Eigen/Eigen/Core:153,from../SP_ToolBo

c++ - 减少 gcc 内存使用

目前我必须在非常有限的硬件(只有2GBRAM的核心i5)上构建一个相当大的项目。当使用4线程运行make时,由于每个线程占用高达40%的RAM,gcc崩溃了。我用谷歌搜索了一下,发现了这个link.一些人反馈它有效。但是,不是我。这是我的做法。/usr/bin/qmake-qt4-r-speclinux-g++$DEBUG_FLAGS-oMakefile"QMAKE_CXXFLAGS+=--paramggc-min-expand=10--paramggc-min-heapsize=8192"/home/build-srv/LargeProject/largeProject.promak

c++ - boost::lambda 表达式无法编译

我尝试使用boostlambda库编写一个函数来计算两个码字之间的汉明距离。我有以下代码:#include#include#include#include#include#include#includetemplateinthammingDistance(Container&a,Container&b){returnstd::inner_product(a.begin(),a.end(),b.begin(),(_1+_2),boost::lambda::if_then_else_return(_1!=_2,1,0));}intmain(){boost::arraya={1,0,1},b

c++ - C++项目的结构应该是什么?

我最近开始学习C++,并且来自Ruby环境,我发现很难以一种仍然可以正确编译的方式构建项目,我一直在使用Code::Blocks,它很棒,但缺点是当我添加一个新的头文件或c++源文件时,它会生成一些代码,尽管只有3或4行,但我不知道这些行是做什么的。首先我想问这个问题:这些线是做什么的?#ifndefTEXTGAME_H_INCLUDED#defineTEXTGAME_H_INCLUDED#endif//TEXTGAME_H_INCLUDED我的第二个问题是,我是否需要#include.h文件和.cpp文件,以及顺序。我的第三个问题是我在哪里可以找到GNUGCC编译器,我相信它与Cod

c++ - 设置基本的多平台启用 cmake 的项目时需要帮助

tl;dr问题在底部。我是一名尝试新事物的开发人员-我的最后一毒是C++。由于我一半时间花在我的linux笔记本电脑上,另一半时间花在WinXPPC上,我试图找到一种方法来创建基本的准系统项目,使用良好的c++实践(好吧,我从经验中不知道它们,我刚刚读到它们)。现在我的项目在使用cmake时几乎可以正常工作。&&make在linux上(当头文件和源文件位于同一文件夹中时它有效,当我将它们分开以包含/src文件夹时失败)。我在Windows上使用nuwen的mingw发行版(我知道工具链正在运行,它从Eclipse中编译项目没有任何问题)。我的项目目录如下所示:engine||-main

c++ - 如何在我的 "include path"中放入一些东西?

我的所有项目都包含在特定目录中的文件(在我的项目目录中称为include)。当我将它们包含在cpp文件中时,我需要#include"include/somefile.h"我要怎么做才能做到#include? 最佳答案 使用编译器的-I标志。喜欢:~$c++-Wall-Werror-pedantic-I/home/user/include-csource_file.cpp 关于c++-如何在我的"includepath"中放入一些东西?,我们在StackOverflow上找到一个类似的问题

c++ - 无法打开源文件 "openssl/bn.h"

#include#include错误:无法打开源文件“openssl/bn.h”,无法打开源文件“openssl/dh.h”???怎么了 最佳答案 确保您的系统上安装了libssl。如果你在linux上使用命令$yumlistlibssl如果已安装。确保你已经在include目录中给出了它的路径。如果您使用的是gcc,您可以使用告诉gcc在目录中搜索-I/path_of_libssl文件夹 关于c++-无法打开源文件"openssl/bn.h",我们在StackOverflow上找到一个

c++ - mpl::transform on boost::fusion::tuple

以下代码无法在g++(GCC)4.6.020110603(预发布版)和-std=c++0x和Boost1.46上编译。1。我错过了一个包含或者这实际上是一个错误吗?如果是后者,如何解决?#include#include#include#include#include#include#include#includenamespacempl=boost::mpl;templatestructMeta{Tt;typedefmpl::vector,std::function,std::function>MplVector;typedefTFusionSequence;//workstypede

c++ 要包含哪些文件和库?

很多时候我在互联网上找到有用的代码示例。大约一半的时间他们没有指定要包含哪些文件,甚至没有在命令行中使用-l指定要包含哪些库。你通常如何发现它?编辑说明:下面的问题已经解决。可以跳过这篇文章的其余部分。现在,我在尝试编译时遇到了很多错误:53:stringGunzip::gunzip(string&compressed)54:{55:namespaceio=boost::iostreams;56:57:io::filtering_istreamgunzip;58:gunzip.push(io::gzip_decompressor());59:std::istringstreamin_s

c++ - 我是否需要做一些特别的事情来让我的 C++ 程序使用 gcc 进行编译?

为什么当我键入g++program_name时,我的程序编译得很好,没有警告,但是当我键入gccprogram_name时,却出现满屏的undefinedreference错误...我经常使用标准库,这里是我的包含:#include#include#include#include#include#include#includeusingnamespacestd;我问的原因是我花了所有时间为codeeval.com挑战开发解决方案。它在用g++编译时完美运行,但不能用gcc编译。长话短说,当codeeval尝试运行我的东西时,我得到0分(!),尽管我不知道他们将如何测试提交......他