Вниз
Скачать: CL | DM;

Стек и как с ним работать   Найти похожие ветки 

 
Фесс   (2006-10-13 15:17) [0]

Кто-нибудь может мне объяснить что это такое и как со стеком работать


 
Elen ©   (2006-10-13 15:23) [1]


> Фесс

Стек используется при передаче параметров в функцию и для хранения локальных переменных в Делфи. Учебник по асму тебе в помощь (ищи POP и PUSH). И еще Яндекс...


 
ors_archangel ©   (2006-10-13 15:37) [2]

Стэк это также и очередь LIFO (last in - first out, или наоборот, если хочешь), можно самому себе написать (иногда полезно): пишешь класс с методами push и pop (вставить элемент, вытащить элемент). Стэк может быть удобнее, например, массива, если добавление/извлечение элементов только последовательное, нагляден весьма.
В асме элемент стека - это машинное слово процессора, но для нас нужны типы (тут западло начинается), но в Делфи нет шаблонов, поэтому элементом стека нужно делать либо pointer, либо TObject, либо, как вариант, можно использовать var нетипизированные параметры, но размер их знать тут придётся и т.д. :( Вобщем, реализация стека относится к обобщённому программированию, чего Паскаль, видимо, никогда не узнает; ООП в Делфи обладает полиморфизмом, но полиморфнен только код, типы же нет (хотя есть class-references, может они тут рулят?).


 
DrPass ©   (2006-10-13 17:41) [3]


> ors_archangel ©   (13.10.06 15:37) [2]

Буду краток: ЧЁ?


 
@!!ex ©   (2006-10-13 17:48) [4]

Мне про стжк в классе 4 я тогда был, объяснили очень просто:

Представь, что каждая переменная - это книга.
Стэк - коробка.
Ты кладеш туда книгу, еще одну, еще одну....
Доступ в коробку только сверху.
Поэтому первой ты можеш взять тольку ту книгу, которой положил последней, потом предпослеюнюю и т.д. до первой положенной книги.


примерно в такоу духе. :)


 
Ketmar ©   (2006-10-13 18:28) [5]

>[3] DrPass(c) 13-Oct-2006, 17:41
>Буду краток: ЧЁ?
местами неко заносит, и оно начинает бредить... %-(



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.026 c
2-1160741398
zancik
2006-10-13 16:09
2006.10.29
Картинка-Button


1-1158407293
Прогер
2006-09-16 15:48
2006.10.29
Unicode <=> ANSI


9-1137814916
You are welcome
2006-01-21 06:41
2006.10.29
Ищется писатель сценария и игровых диалогов


2-1160739574
i-am-vladko
2006-10-13 15:39
2006.10.29
WinAPI на OnShow


6-1149207572
Валерий
2006-06-02 04:19
2006.10.29
Ошибка до перехвата исключения




   Наверх