Классы являются сердцевиной ООП, поскольку именно объекты встроены в классы, а не наоборот. Для программирующих на Си классы являются расширениями структур языка Си, дополненные "механизмами" скрытия данных, функциями элементами и наследованием.
Ниже показана взаимосвязь старых структур Си, новых структур C++
и классов:
Структура Си Структура C++ Класс C++
typedef struct { struct rect { class rect {
int wd, ht; int wd, ht; public:
} rect; }; int wd, ht;
};
В отличии от структур Си, структуры C++ фактически являются типами определяемыми пользователем, без использования ключевого слова
typedef. На помощь программистам добавлено новое для Си ключевое слово: class. Естественно, что класс, имеющий все элементы типа public
без каких-либо функций, является обычной структурой Си.
Ниже приводится типичный пример класса:
class circle { < Объявление класса
private: < Следующий элемент приватный
double radius; < Приватный элемент
public: < Следующие элементы общие
void init(double r); < Функция элемент
double area(void); < Еще одна функция элемент
};