Модификатор доступа public служит для указания публичных (открытых) членов класса. По умолчанию, в классе создаются закрытые члены класса (private), а в структурах - открытые (public), это единственное отличие структур от классов в С++ (это не шутка и на заблуждение).
Открытые члены класса доступны как в самом классе, так и вне его через обращение к объекту.
#include <iostream> // cout, endl
using namespace std;
class My_class{ // Объявление и определение класса My_class
public: // Объявление открытых членов класса
int d = 10; // Открытая целочисленная переменная
void print_d(){ // Открытая функция
cout << d << endl; // Вывод значения переменной d (использование переменной внутри класса)
}
};
int main(){
My_class obj; // Создали объект obj класса My_class
int dd = obj.d; // Можно использовать открытые члены от базового класса (переменную d)
obj.print_d(); //10 Можно использовать открытые члены от базового класса (функцию print_d() )
obj.d = 20; // Можно использовать открытые члены от базового класса и для записи (переменную d)
obj.print_d(); //20 Изменилось значение переменной d и результат вызова функции print_d()
}