Take the 2-minute tour ×  I have a file:   #ifndef
_variableinclude_h_ #define _variableinclude_h_  AClass*
variable1; int* variable2;   But I include this file in another
two different ones:  - atest1.h  - atest2.h  The problem is the
following: variable redefinition.  How to avoid that???
share|improve this question you are getting linker error or a
compiler error? –  Naveen Oct 1 '10 at 5:04 Note that the
include guard is illegally using a reserved prefix (_v). Also,
by convention macro's are uppercase. –  MSalters Oct 1 '10 at
7:26 @MSalters: Why is this reserved? I thought only double
underscores shouldn't be used. –  ur. Oct 1 '10 at 7:29 @ur:
Double underscores are reserved everywhere in tokens, not just
as a prefix. And they're reserved for unspecified use by the
implementation. E.g. a compiler may internally define
_variableinclude_h_ as soon as you #include <variableinclude.h>.
–  MSalters Oct 1 '10 at 7:48 Any identifier containing a double
underscore is reserved. Anything starting with underscore