Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2010, 21:11   #1
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию Проверка наличия указателей в стеке TStack

Как проверить стек на пустоту?
Код:
While stack <не пуст> do
begin
...
end;
Подскажите как это сделать, пожалуйста. Работу не могу продолжить...
"Тебе то может на меня и насрать, но твои глаза меня обожают!"

Последний раз редактировалось ImmortalAlexSan; 25.07.2010 в 23:15.
ImmortalAlexSan вне форума Ответить с цитированием
Старый 26.07.2010, 07:48   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Stack.Count - число элементов в стеке.
Цитата:
While Stack.Count>0 do
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 26.07.2010, 08:17   #3
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Stack - Сколько в него можно засунуть мб?
VintProg вне форума Ответить с цитированием
Старый 26.07.2010, 08:23   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от VintProg Посмотреть сообщение
Stack - Сколько в него можно засунуть мб?
Нисколько. Это стек указателей. А уж на че у тебя будут указывать указатели это твое дело - хоть мегабайты, хоть гигабайты .
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 26.07.2010, 10:10   #5
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Цитата:
Сообщение от VintProg Посмотреть сообщение
Stack - Сколько в него можно засунуть мб?
Этот стек это не тот стек, к-рый в стеке, это тот стек, к-рый в динамической памяти
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 26.07.2010, 10:16   #6
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от mutabor Посмотреть сообщение
Этот стек это не тот стек, к-рый в стеке, это тот стек, к-рый в динамической памяти
Помедленей, а то у меня чуть переполнение стека не случилось.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 26.07.2010, 11:08   #7
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

Ребят, а вот ещё вопрос: как мне сохранить указатель на координаты пикселя в этом стеке? Делаю вот так, но ничего не сохраняется.
Код:
Stack.push(pointer(Form1.Image2.Canvas.Pixels[i,j])); //где i,j - числа.
Или, если я правильно пишу в стек, то может неправильно извлекаю?
Код:
stack.pop; //вот так извлекаю, а мне надо извлечь i и j сами в себя.
Цитата:
Сообщение от Utkin Посмотреть сообщение
Stack.Count - число элементов в стеке.
Спасибо, как всегда выручаете!
"Тебе то может на меня и насрать, но твои глаза меня обожают!"

Последний раз редактировалось Stilet; 26.07.2010 в 12:19.
ImmortalAlexSan вне форума Ответить с цитированием
Старый 26.07.2010, 12:21   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
то может неправильно извлекаю?
Куда извлекаешь то?
Цитата:
извлечь i и j сами в себя
т.е. ты хочешь записать в стек координаты?
Цитата:
(Form1.Image2.Canvas.Pixels[i,j]))
Это ты пишешь цвет пикселя в стек. что тебе нужно туда писать?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.07.2010, 12:41   #9
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Что-то ты напутал, я так и не понял, что тебе нужно сохранить в стеке, цвет или координаты? Если цвет, то можно через Pointer. А если координаты, то напиши класс с координатами, и в стек пихай объекты этого класса. Вот так это примерно выглядеть должно:
Код:
stack:=TObjectStack.Create;
stack.Push(TPos.Create(p.X, p.Y)); //занести координаты затравочного пиксела в стек
...
ps:=stack.Pop as TPos; //Взять координаты затравки из стека
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 26.07.2010, 14:30   #10
Баламут
Баламучу слегка...
Участник клуба
 
Аватар для Баламут
 
Регистрация: 01.11.2006
Сообщений: 1,585
По умолчанию

TStack стандартный класс. Какие могут быть сложности с ним? В хэлпе же все расписано от и до. Не понимаю...
Баламут вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка наличия файла kain151 Microsoft Office Word 3 10.03.2010 14:50
проверка наличия файла Juffin Общие вопросы Delphi 2 18.04.2009 14:17
Проверка наличия файла russian-stalker Общие вопросы Delphi 4 31.08.2008 19:27
Проверка наличия директории SANIOK_AV Общие вопросы Delphi 2 16.01.2008 11:05
Проверка наличия нужной Флешки ??? Noor Общие вопросы Delphi 7 09.11.2007 17:39