等效于 Rust 的 include_str 的 C++ 宏

bat*_*mas 5 c++ rust

C++ 有像 Rust 那样的宏include_str!吗?类似于include!include_bytes也符合我的要求的宏。

Dar*_*uuk 6

没有标准的方法可以做到这一点。有提案P1040R6用于std::embed.

如果您现在想对此进行试验,请查看https://github.com/ThePhD/embed(由上述提案的作者提供)。你需要修补你的编译器,所以它看起来不太便携。

  • 此外,论文还列出了在现有编译器中实现这一点的几种方法。但它们很丑。 (4认同)
  • 还有 [P1967](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1967r2.pdf),这是在 R6 中从 P1040 中分离出来的预处理器级功能(这是早期修订中的一项提案)。以及 [WG14 N2499](http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2499.pdf),针对 C 的相同“#embed”提案。 (3认同)