我想知道我的文件系统在哪里找到C++标准库的标头。特别是我正在寻找向量模板的定义。我在/usr/include/和各个子目录中搜索。我还尝试了“locate vector.h”,它提供了许多向量的实现,但不是标准的。我错过了什么?(分布为Gentoo)
背景:我正在分析一个库,该库在vector的大部分时间内进行迭代,gprof显示大部分时间都花在
std::vector<;int,std::分配器<;int>>;::_M_insert_aux(
__gnu_cxx::u normal_迭代器<;int*,std::vector<;
int,std::分配器<;int>;,int const&;)
可能这就是std::vector::push_back内部发生的情况,但我不确定
GCC通常具有标准的C++标题,安装在/Ur/Cube/C++ + /lt;版本>/。您可以运行gcc-v,找出您安装的版本
至少在我的版本中,没有向量.h;公共头只是vector(没有扩展),大多数实现都是在bits/stl\u vector.h中实现的
我的Ubuntu发行版就是这样;您的分布可能不同