С++ для начинающих



         

Пример: реализация класса Stack - часть 3


( 5 )( bot: 2 4 6 8 10 :top )

iStack pop(): 10

iStack pop(): 8

( 3 )( bot: 2 4 6 :top )

iStack push( 12 )

iStack push( 14 )

( 5 )( bot: 2 4 6 12 14 :top )

iStack::push( 16 )

iStack::push( 18 )

iStack::push( 20 )

( 8 )( bot: 2 4 6 12 14 16 18 20 :top )

iStack::pop(): 20

iStack::pop(): 18

( 6 )( bot: 2 4 6 12 14 16 :top )

iStack::push( 22 )

iStack::push( 24 )

( 8 )( bot: 2 4 6 12 14 16 22 24 :top )

iStack::push( 26 )

iStack::push( 28 )

iStack::push( 30 )

( 11 )( bot: 2 4 6 12 14 16 22 24 26 28 30 :top )

iStack::pop(): 30

iStack::pop(): 28

( 9 )( bot: 2 4 6 12 14 16 22 24 26 :top )

iStack::push( 32 )

iStack::push( 34 )

( 11 )( bot: 2 4 6 12 14 16 22 24 26 32 34 :top )

iStack::push( 36 )

iStack::push( 38 )

iStack::push( 40 )

( 14 )( bot: 2 4 6 12 14 16 22 24 26 32 34 36 38 40 :top )

iStack::рор(): 40

iStack::popQ: 38

( 12 )( bot: 2 4 6 12 14 16 22 24 26 32 34 36 :top )

iStack::push( 42 )

iStack::push( 44 )

( 14 )( bot: 2 4 6 12 14 16 22 24 26 32 34 36 42 44 :top )

iStack::push( 46 )

iStack::push( 48 )

iStack::push( 50 )

( 17 )( bot: 2 4 6 12 14 16 22 24 26 32 34 36 42 44 46 48 50 :top )

iStack::pop(): 50

iStack::pop(): 48

( 15 )( bot: 2 4 6 12 14 16 22 24 26 32 34 36 42 44 46 :top )

Упражнение 4.23

Иногда требуется операция peek(), которая возвращает значение элемента на вершине стека без извлечения самого элемента. Реализуйте функцию peek() и добавьте к программе main() проверку работоспособности этой функции.

Упражнение 4.24

В чем вы видите два основных недостатка реализации класса iStack? Как их можно исправить?




Содержание  Назад  Вперед