-1
#define GETSTRING(s) return #s

enum a_type { SMALL, MEDIUM, LARGE };

const char* get_data(a_type a) { return GETSTRING(a); }


int main() {

   a_type at = SMALL;

   const char* s = get_data(at);

   return 0;
}

我得到编译器错误:

main.cpp(5):错误 C2059:语法错误:'return'

我做错了什么?

4

1 回答 1

3

如果你gcc -E用来输出预处理的源代码,你会看到你有一个额外return的 in get_data

const char* get_data(a_type a) { return return "a"; }
于 2013-05-31T15:57:33.570 回答