【问题标题】:How to capture argument expression as string literal without using macro?如何在不使用宏的情况下将参数表达式捕获为字符串文字?
【发布时间】:2021-10-05 20:21:18
【问题描述】:

在 C 中,通过 this answer 中提到的宏将参数捕获为字符串 literl 是很常见的:

#define CALL_DO_SOMETHING(VAR) do_something(#VAR, VAR);

但另一方面,有许多项目有反对使用宏的政策,并建议始终使用模板。

我想知道是否可以用现代 C++ 方式表达类似的语法,或者这是另一个必须使用宏的极端情况?

【问题讨论】:

    标签: c++ templates metaprogramming


    【解决方案1】:

    字符串化只能由 MACRO 完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多