Partager via


privé (C++)

private:
   [member-list]
private base-class

Notes

En faisant précéder une liste de membres de classe, le mot clé d' private spécifie que ces membres sont accessibles uniquement des fonctions membres et friends de la classe.Cela s'applique à tous les membres déclarés jusqu ' à le spécificateur d'accès suivant ou à la fin de la classe.

En faisant précéder le nom d'une classe de base, le mot clé d' private spécifie que le public et les membres protégés de la classe de base est les membres privés de la classe dérivée.

l'accès par défaut des membres dans une classe est privé.L'accès par défaut des membres d'une structure ou une union est public.

L'accès par défaut d'une classe de base est privé pour les classes et le public pour les structures.Les unions ne peuvent pas avoir de classes de base.

Pour plus d'informations, consultez fonction friend, public, protégé, et le tableau d'accès de membre dans Contrôler l'accès aux membres de classe.

détail de /clr

Dans les types CLR, les mots clés de spécificateur d'accès C++ (public, private, et protected) peuvent affecter la visibilité des types et des méthodes par rapport à les assemblys.Pour plus d'informations, consultez Type de visibilité et de membre.

[!REMARQUE]

Les fichiers compilés avec /LN ne sont pas affectés par ce comportement.Dans ce cas, toutes les classes managées (public ou privé) seront visibles.

Exemple

// keyword_private.cpp
class BaseClass {
public:
   // privMem accessible from member function
   int pubFunc() { return privMem; }
private:
   void privMem;
};

class DerivedClass : public BaseClass {
public:
   void usePrivate( int i )
      { privMem = i; }   // C2248: privMem not accessible
                         // from derived class
};

class DerivedClass2 : private BaseClass {
public:
   // pubFunc() accessible from derived class
   int usePublic() { return pubFunc(); }
};

int main() {
   BaseClass aBase;
   DerivedClass aDerived;
   DerivedClass2 aDerived2;
   aBase.privMem = 1;     // C2248: privMem not accessible
   aDerived.privMem = 1;  // C2248: privMem not accessible
                          //    in derived class
   aDerived2.pubFunc();   // C2247: pubFunc() is private in
                          //    derived class
}

Voir aussi

Référence

Accès de contrôle aux membres de classe

Mots clés C++