Al aprender la idea de la programación orientada a objetos en C++ , en las características de la herencia orientada a objetos , además de los conceptos de clases y objetos , constructores y destructores de clases, y algunas operaciones sobre objetos de instanciación de clases , un concepto importante es Variables miembro estáticas (miembros de datos estáticos) y funciones miembro estáticas .
Preguntas: 1. ¿Qué es una variable miembro estática?
2. ¿Qué es una función miembro estática?
3. Análisis y aplicación en profundidad
Variables miembro estáticas:
1. Todos los objetos comparten los mismos datos
2. Asignar memoria en la etapa de compilación
3. Declarar dentro de la clase, inicializar fuera de la clase
Función miembro estática:
1. Todos los objetos comparten la misma función
2. Las funciones miembro estáticas solo pueden acceder a las variables miembro estáticas
Ejemplo de código:
#include<iostream> using namespace std; class Person{ public: static void show(){ m_a=10; cout<<m_a; cout<<"函数的调用"<<endl; } static int m_a; }; int Person::m_a=9;//静态数据成员类内定义类外初始化 int main() { //静态成员函数的调用方法 //通过对象访问 Person p; p.show(); //通过类名访问 Person::show(); return 0; }
Caso de consideración: ¿Se pueden establecer como privados los derechos de acceso del constructor de una clase? ?