包含boost标题g ++

问题描述

我正在尝试使用c ++进行Boost高精度的简单示例,而无需将其安装在计算机上(仅使用标头)。

//func.cpp
#include <boost/multiprecision/cpp_int.hpp>
#include <iostream>

int main()
{
   using namespace boost::multiprecision;

   int128_t v = 1;

   // Do some fixed precision arithmetic:
   for(unsigned i = 1; i <= 20; ++i)
      v *= i;

   std::cout << v << std::endl; // prints 20!

   // Repeat at arbitrary precision:
   cpp_int u = 1;
   for(unsigned i = 1; i <= 100; ++i)
      u *= i;

   std::cout << u << std::endl; // prints 100!

   return 0;
}

我正在运行ubuntu,并且已将boost文件夹复制到要在其中运行func.cpp的主文件夹中。然后运行:

g++ -I/boost/ -o func func.cpp

我得到了错误

In file included from func.cpp:28:
boost/multiprecision/cpp_int.hpp:11:10: Fatal error: boost/cstdint.hpp: No such file or directory
   11 | #include <boost/cstdint.hpp>
      |          ^~~~~~~~~~~~~~~~~~~
compilation terminated.

看来cpp_int.hpp是#include-header,位于它上面的一个目录中(在我复制进来的boost文件夹内,我已经检查过了,在那儿)。我可能会缺少一些基本知识,因为在尝试使用其他软件包时会遇到相同类型的错误

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...