Классы
51.51K
Категория: ПрограммированиеПрограммирование

Классы. Лекция 10

1. Классы

2.

class <имя класса>
{ <список членов класса> }
class X { ... };
X x;

3.

class X
{ int i;
int i;
};
int X::k;
class Y
{ int f();
int f();
int f(int x);
};
class Z
{ int f();
int f;
};

4.

<переменная> . <имя члена класса>
<указатель> -> <имя члена класса>

5.

Член класса может быть:
• приватным (private) – это значит, что
его имя может употребляться лишь внутри
функций-членов класса и друзей класса,
в котором этот член объявлен;
• защищённым (protected) – это значит,
что его имя может употребляться лишь
внутри функций-членов и друзей этого
класса и производных от него классов;
• публичным (public) – это значит, что
его имя может употребляться внутри
любой функции (а также и вне функций
в инициализаторах).

6.

class X
{ private:
int n;
public:
void f();
};
void X::f()
{ n++; }
X a, b;
a.f();

7.

class X
{ private:
int n;
public:
int f() const;
};
int X::f() const
{ return n++; }

8.

class X
{ private:
int a;
public:
void f(int a) { this->a = a; }
};

9.

class X
{ ...
public:
X& f();
};
X& X::f()
{ ...
return *this;
}

10.

class Vector
{ private:
int size;
...
public:
int GetSize() { return size; }
...
}

11.

class Vector
{ private:
int size;
...
public:
int GetSize();
...
}
inline int Vector::GetSize()
{ return size; }
English     Русский Правила