Can I define the global variables inside those shared headers?
No.
In A.cpp (or) B.cpp write,
int gVariable = 10;
Remember to write the above definition in only one source file or else linker will complain of multiple symbols if you write in both the source files.
And in the common header of A.cpp, B.cpp write,
extern int gVariable;
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…