我需要在 std::vector<T>
的调试版本中查找一些东西,我不记得 header 的实际位置。这是在 Windows 上的 MSYS 下,这很棘手,因为你有 /include
, /mingw/include
, /mingw/mingw32/include
, /usr/include
,我仍然找不到它们...
我知道一种方法,就是这样写一个文件:
#include <vector>
int main() {
return 0;
}
然后
$ g++ -E temp.cpp | grep vector
我们发现它在这里:/mingw/lib/gcc/mingw32/4.8.1/include/c++/vector
但是有没有更快的方法呢?可以问一下吗g++
不用这个技巧?
最佳答案
您可以显示完整的搜索路径
g++ -print-search-dirs
或者你可以找到一个特定的头文件而不用写一个源文件
echo '#include <vector>' | g++ -x c++ -E - | grep '/vector"'
关于c++ - 找到 g++ 使用的 STL header 的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21110693/