Язык С++ и программирование на нем. Рейзлин В.И. - 97 стр.

UptoLike

Составители: 

99
void m_func (int);};
void f_func (cl* cpt, int i){
cptr->numb = i; // Нужен явный указатель на объект,
// так как указатель this не опреде-
лён!
}
void cl::m_func(int i){
numb = i; // То же, что this->numb = i;
}
void main (){
cl obj;
f_func (&obj, 10);
obj.m_func (10);
// Сравните способы вызова и аргументы функций!
…}
Следующий пример демонстрирует возможность доступа к стати-
ческим личным членам класса ещё до создания хотя бы одного объекта
этого класса.
class cl {static int num;
public:
void set (int i){num = i;}
void m_show () {cout<<num<<’\n’;}
friend void f_show (){cout << cl::num<<’\n’;}
};
int cl::num = 8;
void main(){
cout <<”Объектов типа cl нет.\n”;
cout <<”Статический член класса = ”;
// Пока можно использовать только дружественную функцию:
f_show ();
cl obj;
obj.set (200);
cout <<”Создан объект типа cl.\n”;
cout <<”Статический член класса = ”;
// Теперь можно использовать и функцию-член.
obj.m_show ();
}