我有一些unix源我想要在VS中工作。我猜,所有的#includes都被编码为一些用户定义的头文件路径。例如#include <myheader>
,但myheader存在于..\headers\myheader.hpp
之类的项目文件夹中。修复所有包含在子目录中的C++文件中的路径
是否有任何实用工具可以递归扫描所有C++文件并修复#include与这些子目录中找到的头文件?
例如,它会转换
#include <myheader>
到
#include "..\headers\myheader.hpp"
?
(否则我一定要扁平化层级,因为这是一个有点乱)
(有没有必要担心潜在的重复头......)
为什么不直接添加到编译器的头文件路径? – x13n
你真的不应该包含目录路径作为你的#includes的一部分 - 它会使代码库变得凌乱,脆弱并且难以维护。正确的解决方案是为编译器指定搜索路径,以帮助它找到所需的#includes。 –
@ x13n因为这是难以编码的路径......没有理由这样做。代码编写者应该首先使用相对路径。 (另外,大约有50个Dirs,每个都需要包含在内......只是浪费在做这件事,而不是正确的方式) – AbstractDissonance