After solving this simple issue, I had to ask :
-> In the H file in a class ex a const static member is defined, e.g. :
class ex {
const static int my_ex;
};
-> In the CPP file the value is specified
ex::my_ex = 32;
And then one gets the error "conflicting declarations" (as well as "does not name a type"). I understand that the definition in the CPP file is also a declaration which does create a conflict seen from the linker BUT why only about the const specifier (and type) and not the static one ? I only have to write
const int ex::my_ex = 32;
to get it to compile. But not static ... Why not? Why can't I just define and not repeat declaration related steps (type, specific identifiers)?