Au moment de la compilation affirmation?

Est-il une manière que je peux affirmer que les deux expressions constantes sont égales au moment de la compilation?

par exemple, je veux que cela provoque une erreur de compilation

enum { foo=263, bar=264 };
SOME_EXPRESSION(foo,bar)

mais je souhaite que cela pour ne pas causer une erreur

enum { foo=263, bar=263 };
SOME_EXPRESSION(foo,bar)

edit: le ci-dessus a été simplifié. Ma situation est plus comme

some_other_file_I_dont_control.h:

class X
{
public:
   enum { foo=263 };
}

my_file.h:

enum { bar=something+somethingelse }; //bar should equal X::foo
SOME_EXPRESSION(X::foo, bar)
InformationsquelleAutor Jason S | 2011-07-20