Private

id02009

private - słowo kluczowe; oznacza dostępność składowych z danej klasy.

Do składowych private danej klasy dostęp mają tylko metody tej klasy oraz metody klas zaprzyjaźnionych (Friend).
Ten zakres widoczności jest domyślny, więc można go pominąć (*):

Przykład

```cpp class klasa1 { private: int x;

public:
friend class klasa2;
} obiekt1;

class klasa2
{
public:
void metoda(klasa1 &p)
{
p.x=12;
}
} obiekt2;

obiekt1.x=12; // spowoduje błąd kompilacji

obiekt2.metoda(obiekt1);
/* to wywołanie jest dozwolone, gdyż klasa2 jest zaprzyjażniona z klasa1, więc jej metdy maja dostęp do składowych private. Efektem wywołania tej funkcji bedzie uaktualnienie
atrybutu x obiektu obiekt1 */


<a name="p"></a> (*) - klasę klasa1 mozna równiez zdefiniowć tak (efekt będzie identyczny):
```cpp
class klasa1
{
  int x;  // pominięto słowo kluczowe private
  
  public:
    friend class klasa2;
} obiekt1;

Zobacz też:

0 komentarzy