相关疑难解决方法(0)

C++标准库的标头在哪里?

我想知道我的文件系统在哪里找到了C++标准库的标题.特别是我正在寻找矢量模板的定义.我在/ usr/include /和各个子目录中搜索.我也试过'locate vector.h',它提出了很多矢量的实现,但不是标准的.我错过了什么?(分布是Gentoo)

背景:我正在分析一个在大多数情况下迭代向量的库,而gprof表明大部分时间花费在

std::vector<int, std::allocator<int> >::_M_insert_aux(
  __gnu_cxx::__normal_iterator<int*, std::vector<
      int, std::allocator<int> > >, int const&)
Run Code Online (Sandbox Code Playgroud)

可能这是std :: vector :: push_back内部发生的事情,但我不确定.

c++ linux stl header-files c++-standard-library

23
推荐指数
2
解决办法
5万
查看次数

即使设置了包含路径,Eclipse 也找不到头文件

这是我们已经处理了一段时间的问题 - 我们正在使用 Cygwin 工具链构建一个 C++ 项目,无论我们在项目设置下的 C++ 编译器包含路径中添加什么,Eclipse 似乎都找不到必要的头文件。

到目前为止,我们已经完成了 Stackoverflow 社区建议的一切;

  • 确保包含路径与工作空间相关
  • 尝试过反斜杠和正斜杠
  • 尝试使用 Cygwin 特定路径(/cygdrive/c 而不是 C:/)
  • 检查编译器输出以验证包含路径是否存在
  • 检查生成的 makefile 以确保它们正确
  • 重建索引
  • 完全删除debug文件夹
  • 重新启动Eclipse

基本上,只要更改#include <...>代码本身以使用完整路径就(C:/.../file.h)可以了。这不适用于我们的需求,因为我们需要多个开发人员能够处理这个项目,并且文件本身是由于我们的一些构建过程而动态生成的。

c++ eclipse cygwin file-not-found

7
推荐指数
1
解决办法
9073
查看次数