繁体   English   中英

转储带有合并的#includes的C ++源代码

[英]Dump C++ source with merged #includes

是否有一个工具(或Gcc / Clang标志)从包含#include多个其他头文件(STL和自定义头文件)的头文件中创建单头C ++文件? STL标头#include应当保持不变。

例如,给定这些文件:

// a.h
#pragma once
#include <my_lib/aa.h>
void baz() {}


// aa.h
#pragma once
void foo(int) {}


// b.h
#pragma once
void bar(float) {}


// master.h
#pragma once
#include <string>
#include <my_lib/a.h>
#include <memory>
#include <my_lib/b.h>
#include <vector>

在master.h上运行该工具将得到以下输出(空格可能有所不同):

#pragma once
#include <string>
void foo(int) {}
void baz() {}
#include <memory>
void bar(float) {}
#include <vector>

如果#ifdef内有任何#include ,则也应将其转储。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM