La directiva #include
literalmente significa "copiar todos los datos de ese archivo a este punto." Entonces, cuando incluye el archivo de encabezado, está textualmente dentro del archivo de código y todo estará allí, otorgue o tome el efecto de otras directivas o macro reemplazos, cuando el archivo de código (ahora llamado compilación unidad o traducción unidad) se transfiere desde el módulo de preprocesador al módulo de compilación.
Lo que significa que la declaración y definición de su función miembro estática estaban realmente en el mismo archivo todo el tiempo ...
Podría explicar por qué "no se puede" implementar la función de memeber de clase estática en su archivo cpp? cualquier error? Por lo general, no hay ninguna limitación sobre dónde implementar dicha función. – winterTTr
@winterTTr, La pregunta probablemente surgió porque la mayoría de los ejemplos/tutoriales en la web no presentan un ejemplo de implementación separado, en cambio lo declaran y definen en el encabezado. Al menos los primeros seis hits en mi motor de búsqueda favorito para "función de miembro estática de C++", todos lo hacen de esta manera y no explican cómo implementarlo en archivos separados para un novato. – crobar
Cuando implemente, no repita la palabra clave 'static'. Escriba la palabra clave 'static' solo en la definición de clase en el archivo de encabezado – SomethingSomething