假设我想选择某个预处理器指令的行为,该指令在编译时评估常量字符串的连接和另一个宏的结果。
#define CASE1 text1
#define CASE2 text2
#define CASE3 text3
#define SCENARIO 3
/** the following won't work - for examplification purposes only**/
#define FUNCTION CASE##SCENARIO
/** whenever I write FUNCTION, I expect to see text3 **/
我很难想出一个可行的解决方案,因为预处理器是一次性的野兽。这甚至可行吗?