Share via


public (C++)

public:
   [member-list]
public base-class

Comentarios

Cuando precede a una lista de miembros de clase, la palabra clave public especifica que esos miembros son accesibles desde cualquier función. Esto se aplica a todos los miembros declarados hasta el especificador de acceso siguiente o el final de la clase.

Cuando precede al nombre de una clase base, la palabra clave public especifica que los miembros públicos y protegidos de la clase base son miembros públicos y protegidos, respectivamente, de la clase derivada.

El acceso predeterminado de miembros de una clase es privado. El acceso predeterminado de miembros de una estructura o unión es público.

El acceso predeterminado de una clase base es privado para las clases y público para las estructuras. Las uniones no pueden tener clases base.

Para obtener más información, vea private, protected, friend y la tabla de acceso a miembros en Controlar el acceso a miembros de clase.

Específicos de /clr

En los tipos de CLR, las palabras clave de especificador de acceso de C++ (public, private y protected) pueden afectar a la visibilidad de los tipos y los métodos con respecto a los ensamblados. Para obtener más información, vea Tipos y miembros Visibility.

Nota

Los archivos compilados con /LN no se ven afectados por este comportamiento.En este caso, todas las clases administradas (ya sean públicas o privadas) estarán visibles.

Ejemplo

// keyword_public.cpp
class BaseClass {
public:
   int pubFunc() { return 0; }
};

class DerivedClass : public BaseClass {};

int main() {
   BaseClass aBase;
   DerivedClass aDerived;
   aBase.pubFunc();       // pubFunc() is accessible 
                          //    from any function
   aDerived.pubFunc();    // pubFunc() is still public in 
                          //    derived class
}

Vea también

Referencia

Controlar el acceso a los miembros de clase

Palabras clave de C++