Функции |
Структуры в С++ могут иметь в качестве своих членов(в предыдущем примере это s и top) не только переменные но и функции. Для этого объявление функций вставляется в объявление структуры, например предыдущий пример стека можно объявить так:
struct stack { char s[1000]; int top; void reset() { top = -1; } void push(char c) { ++top; s[top] = c; } char pop() { --top; return s[top]; } }; Функции-члены записаны так же как обычные функции. Отличие лишь в том что теперь они могут использовать переменные и функции "как есть", им не нужно передовать в качестве параметров такие переменные как s и top. Обращаются к функциям-членам так же как и к обычным членам: с помощью оператора ".", а указатели с помощью оператора "->". Приведем несколько фрагментов кода: stack My_stack; My_stack.reset(); stack *pMy_stack = &My_stack; pMy_stack->push('A'); Переменные структур и классов(позже мы узнаем что это) принято называть - "объектами", с этой минуты и мы их будем так называть. |