Основная идея объектно-ориентированного подхода является возможность объединить в структуре не только данные, которые описывают какой то объект или сущность, но имеют встроенные функции, которые определяют взаимодействие классов между собой и с другими частями программы.
При этом функции внутри класса называют методами или функциями членами класса.
При таком подходе поля отвечают за количественные характеристики объекта, а методы за его качественные характеристики (поведение).
Для начала посмотрим как расширяется определение структур в С++.
struct Stack
{int Elements[50];
unsigned int top;
void Init(){top=0;}
void Push(int NewElement);
int Pop();
int Top(){return Elements[top];}
void View();
};