【发布时间】:2012-10-02 15:33:07
【问题描述】:
我正在尝试对混合大小写单词的任意集合使用 DRY 方法,以便文本 MixedCase 可以同时生成:
- 编译时字符串
"MixedCase" - 编译时变量
const int MIXEDCASE_ID
我正在使用 gcc,可以接受 gcc 扩展。
C++ 是否可以将代码中的 test 转换为大写?例如,这样
转换(abc)
会产生符号ABC? 如果没有,除了在代码中将每个样本输入两次之外,还有其他解决方案吗?
编辑: 考虑到输入格式没有限制。 Mixed 或 "Mixed" 或 'M', 'i', 'x', 'e', 'd' 或 0x4d 0x69 0x78 0x65 0x64(恶心?)...
【问题讨论】:
-
模板在编译时解决,就像宏一样,如果我正确理解你的问题,你可以使用模板来解决这个问题。
-
@axis 你可能有。我很高兴我描述了根本问题。
-
@LuchianGrigore 您是否考虑将此作为答案?这将是完整的,这个问题很有趣。
-
@LuchianGrigore:那你会考虑删除评论吗?我相信您留下它是为了提供帮助,(谢谢),但这可能会阻碍我得到的创造性、有用的答案。
-
在编译时将
"MixedCase"转换为"MIXEDCASE"不是问题,但将其用作符号是。
标签: c++ gcc c-preprocessor