Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 包括<;本征/稠密>;成功,包括<;本征>;失败_C++_Include_Eigen - Fatal编程技术网

C++ 包括<;本征/稠密>;成功,包括<;本征>;失败

C++ 包括<;本征/稠密>;成功,包括<;本征>;失败,c++,include,eigen,C++,Include,Eigen,我的问题和这个5岁的孩子很相似 如果我使用以下代码,我可以成功编译它: #include <Eigen/Dense> #include <iostream> //#include <boost/serialization/array_wrapper.hpp> #include <boost/date_time/gregorian/gregorian.hpp> int main(){ std::cout<<"asfser

我的问题和这个5岁的孩子很相似

如果我使用以下代码,我可以成功编译它:

#include <Eigen/Dense>
#include <iostream>
//#include <boost/serialization/array_wrapper.hpp>
#include <boost/date_time/gregorian/gregorian.hpp>

int main(){
        std::cout<<"asfserea"<<std::endl;
        boost::gregorian::date d(boost::gregorian::day_clock::local_day());
        std::cout << d.year() << d.month() <<d.day() << std::endl;
        return 0;
}
#包括
#包括
//#包括
#包括
int main(){

std::cout您要查找的文件是
。如果您想包含
,您应该将正确的文件夹添加到包含路径中


对于
array\u wrapper.hpp
,您需要更新版本的Boost。至少版本1.67.0有此文件。

您要查找的文件是
。如果您想包含
,您应该将正确的文件夹添加到包含路径

对于
array\u wrapper.hpp
,您需要更新版本的Boost。至少1.67.0版有此文件。

当您
#include
时,编译器会查看您告诉它的目录,查找名为
Eigen
的文件。它只找到名为
Eigen
的文件夹,并且在该文件夹中有文件
Eigen
Dense
。它不会查看该文件夹内部

如果更改编译器参数以包括
Eigen
文件夹(而不是其父文件夹),您可以
#include
#include
。或者,您可以保持您的include目录不变,并将
Eigen/
预先添加到所有的Eigen include

当您
#include
时,编译器会查看您告诉它的目录,查找名为
Eigen
的文件。它只找到一个折叠er命名为
Eigen
,在该文件夹中有文件
Eigen
densite
。它不在该文件夹中查看


如果更改编译器参数以包括
Eigen
文件夹(而不是其父文件夹),您可以
#include
#include
。或者,您可以保持您的include目录的原样,并将
Eigen/
预先添加到所有的Eigen include

如果您的代码以当前状态编译,为什么要更改标题?我从github克隆了一个项目,在他的文件中,他使用了#include,然后使用typedef Eigen::Matrix.ETC根据您的评论,您有一个误解。更改#包含并不影响使用
Eigen::
限定
矩阵
的需要。最好是
#包含
,而不是将
Eigen
子文件夹添加到包含路径。如果您的code以当前状态编译?我从github克隆了一个项目,在他的文件中,他使用了#include,然后使用typedef Eigen::Matrix.etc根据您的评论,您有一个误解。更改#include不会影响使用
Eigen::
限定
矩阵的需要。最好是
包含
而不是将
Eigen
子文件夹添加到包含路径中。我的增强版本是1_67_0,我的确有array_wrapper.hpp。@jack如果
#include
起作用,我想你的包含路径中已经有boost,那么
#include
也应该起作用。你确定你的包含路径会导致正确的增强版本,而不是在一个没有
数组包装器的旧版本中,hpp
?我将boost\u 1\u 67\u 0/stage/lib包含在CPLUS\u INCLUDE\u路径中,我将boost\u 1\u 67\u 0包含在路径中。我的boost版本是1\u 67\u 0,我的确有array\u wrapper.hpp。@jack如果
\INCLUDE
有效,我想你的INCLUDE路径中已经有boost,所以
\INCLUDE
should也可以工作。您确定您的包含路径导致正确版本的Boost,而不是没有
数组\u包装器的旧版本。hpp
?我将Boost\u 1\u 67\u 0/stage/lib包含在CPLUS\u包含路径中,我将Boost\u 1\u 67\u 0包含在路径中