I want the code

Code:
MY_MACRO(x)
to be replaced by the code

Code:
#ifdef my_class_##x
   #error My error message
#endif
class my_class_##x
{
     ...
};
However, this macro does not compile:

Code:
#define MY_MACRO(x) \
#ifdef my_class_##x \
    #error My error message \
#endif \
class my_class_##x; \
{ \
   ... \
};
Is there a way to accomplish something like this?