是否有一种方法可以从非C / C ++文件中读取C ++原始字符串文字的内容(在编译时-即使其硬编码到结果单元中?
C ++具有很好的原始字符串文字,例如
const char* const cstring =
R"myheredoc(
do ;*!$%@#
whatever
you want here
)myheredoc";
但是,有没有一种方法可以从非C ++文件(例如示例配置文件)中读取原始字符串的内容。
我可以想象这可以通过构建系统来完成,只是想知道我没有错过C ++强大的新功能。
答案 0 :(得分:4)
当前,C ++无法实现它,除非依赖预处理器和构建系统。
当您可以使用预处理器#include
自动生成的头文件/源文件来完成此任务时,情况有些遗憾。因此,目前有一篇针对C ++ 20的论文,提出了恰当的命名为std::embed
。如果它被选入C ++标准,它将几乎可以做您想要做的事情。所以请继续关注。