gpt4 book ai didi

c++ - 打印您使用参数定义的方法名称

转载 作者:行者123 更新时间:2023-11-30 01:26:08 25 4
gpt4 key购买 nike

我们正在使用一种方法

#define CM_VALUE_1                       CM_Method(3001)

CM_Method 是在同一文件中定义的方法。

我只想在 vc++ 中使用 CM_VALUE_1 打印 CM_Method(3001)

最佳答案

间接使用 stringize 预处理器运算符来获取您想要的内容。

#define MAKE_STR(X) #X
#define MAKE_STR2(X) MAKE_STR(X)

std::cout << MAKE_STR(CM_VALUE_1)
<< " is " << MAKE_STR2(CM_VALUE_1)
<< std::endl;

会导致

CM_VALUE_1 is CM_METHOD(3001)

如果 MAKE_STR2 的参数本身是一个宏,它在调用 MAKE_STR 时被扩展,所以结果是参数定义的字符串化,而不是而不是宏名称本身。

关于c++ - 打印您使用参数定义的方法名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11009130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com