【发布时间】:2009-05-31 22:27:03
【问题描述】:
我必须在函数内多次使用宏,而需要使用的宏取决于我传递给函数的数字。
例如
function(int number) {
switch(number) {
case 0: doStuff(MACRO0); break;
case 1: doStuff(MACRO1); break;
}
}
问题是:每个带有相同宏的 switch 语句我有很多事情要做。 有没有比在 switch 语句中包含所有这些东西更优雅的解决方案?就像将宏本身传递给函数一样?我已经阅读了 C++ 中类似 eval() 的方法,但它们对我来说感觉不对。另一种方法是确定宏扩展的内容,但我没有找到任何相关信息。
哦,其实是openGL。
【问题讨论】: