1) las funciones miembro estáticas no tienen este puntero .
Por ejemplo, el siguiente programa falla en la compilación con el error «`this’ no está disponible para las funciones de miembros estáticos»
CPP
#include<iostream> class Test { static Test * fun() { return this; // compiler error } }; int main() { getchar(); return 0; }
2) Una función miembro estática no puede ser virtual (Ver este G-Fact)
3) Las declaraciones de función miembro con el mismo nombre y el nombre lista-tipo-parámetro no pueden sobrecargarse si alguna de ellas es una declaración de función miembro estática.
Por ejemplo, el siguiente programa falla en la compilación con el error » ‘void Test::fun()’ y `static void Test::fun()’ no se pueden sobrecargar «
CPP
#include<iostream> class Test { static void fun() {} void fun() {} // compiler error }; int main() { getchar(); return 0; }
4) Una función miembro estática no puede declararse const , volatile o const volatile .
Por ejemplo, el siguiente programa falla en la compilación con el error «función de miembro estático ‘static void Test::fun()’ no puede tener el calificador de método ‘const'»
CPP
#include<iostream> class Test { static void fun() const { // compiler error return; } }; int main() { getchar(); return 0; }
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Referencias:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1905.pdf
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA