有什么方法可以在代码中包含C ++头文件吗?

时间:2017-12-12 18:33:10

标签: c++ variables include

通过使用变量作为标题名称,有没有办法在代码中包含文件?像这样:

const char *ch = "test.h"; /* include it now with the var */ #include ch

如果答案是否定的,是否有任何功能或任何方法可以做到这一点?

3 个答案:

答案 0 :(得分:1)

预处理器正在执行其内容before the compiler even starts,因此在编译const char *ch = "test.h";时,代码中不再有#include个。

  

如果答案是否定的,是否有任何功能或任何方法可以做到这一点?

要回答这个问题,您必须解释您实际想要实现的目标。这是一个经典的xy problem:你问的是你认为什么是解决方案,但我们不知道你要解决什么问题......

答案 1 :(得分:0)

你可以这样做。虽然我提醒我不要这样做。

#define TEST_H "test.h"
#include TEST_H

答案 2 :(得分:0)

虽然提出的问题是关于标题,但是#12; XorTroll 12月12日在19:20"听起来像是可以通过dlopen()在运行时加载动态共享库来完成的修改。您需要预编译的库,涵盖所有用户控制的内容或非常复杂的环境,包括JIT生成和编译!