The keyword is externnot permitted as a storage class specifier for class members. From [dcl.stc] / 5:
[...] The specifier externcannot be used in the declaration of class members or function parameters. [...]
In addition, definitions are announcements, cf. [Basic.def] / 2:
A declaration is a definition, if only [rules].
, extern , , , .