有没有办法从非C/C++文件中读取C++原始字符串文字的内容



有没有办法从非C/C++文件中读取C++原始字符串文字的内容(在编译时,即将其硬编码到结果单元中?

C++有很好的原始字符串文字,例如

const char* const cstring = 
R"myheredoc(
do ;*!$%@#
whatever 
you want here
)myheredoc";

然而,是否有一种方法可以从非C++文件(例如,配置文件示例(中读取原始字符串的内容。

我可以想象这可以通过构建系统来完成,只是想知道我没有错过任何新的C++功能。

目前C++除了依赖预处理器和构建系统之外,没有办法实现它。

虽然可以通过预处理器#include处理的自动生成的头/源文件来实现这一点,但这是一种有点令人遗憾的情况。因此,目前有一篇关于C++20的论文正在进行中,提出了一个恰当的名称std::embed。如果它被选入C++标准,它将允许你做你想要做的事情。请继续关注。

最新更新