Объект — это абстрактная сущность, наделенная характеристиками объектов реального мира.
C++ объекты играют очень важную роль. Все, чем вы манипулируете в программе, может рассматриваться как объект. При выполнении программы объекты создаются и удаляются. Они взаимодействуют с другими объектами и могут быть помещены в группы, коллекции, массивы, списки и т.д. В C++ многое (но не все), с чем работает программа, является объектами. По этой причине C++ называют гибридным объектно-ориентированным языком.
Объекты в C++ — это программные конструкции, формируемые так называемыми классам. Определение переменной класса также называется созданием экземпляра класса (class instantiation). За создание своих классов полную ответственность несет сам программист. Но он может получить доступ и к классам, разработанным другими программистами. Например, к классам, которые находятся в библиотеке контейнеров или библиотеке потоков компилятора Borland C++.
Главное отличие С от С++ — это классы. Уже само по себе существование классов в C++ является замечательной особенностью, делающей его объектно-ориентированным языком.
Классы — это структуры, которые содержат не только объявления данных, но и функций. Эти функции называются функциями-членами (member functions) и определяют, что может делать класс.
Для того чтобы использовать класс, его нужно вначале объявить точно так же, как это делается со структурами. И так же как для структур, полное объявление класса может появиться в программе только один раз.