Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на языке Pascal

Выпуск № 220
от 22.12.2003, 10:40

Администратор:
Имя: Sensey
URL: Информационный ресурс
ICQ: 105679124
Украина, Харьков
О рассылке:
Задано вопросов: 381
Отправлено ответов: 1344
Активность: 352.7 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

Boriss
Статус: Опытный
Общий рейтинг: 147.42
URL: Программирование на Паскале
[Подробней >>]
sir henry
Статус: Профессиональный
Общий рейтинг: 158.85
[Подробней >>]
Drahus
Статус: Опытный
Общий рейтинг: 166.66
[Подробней >>]
 
Tancho
Статус: Профессиональный
Общий рейтинг: 153.33
Телефон: сл. 0359 0391 65 631; 0359 0391 53 105
[Подробней >>]
vitya
Статус: Профессиональный
Общий рейтинг: 108.27
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 375. спасибо все откликнувшимся на вопрос №372. По поводу вопрос под цифрой 3. регэкспы - Регулярные выр... (ответов: 3)
Вопрос № 376. Здравствуйте, эксперты! Кто нибудь в курсе как, в Borland Pascal 7, проверить объект на существовани... (ответов: 4)

Вопросов: 2, ответов: 7


 Вопрос № 375

спасибо все откликнувшимся на вопрос №372.
По поводу вопрос под цифрой 3. регэкспы - Регулярные выражения. Я знаю что компанеы для работы с ними есть в Делфи(компаненты написаны на Object Pascal'e если не ошибаюсь), а в паскале(интересует BP и TP) есть чтонибудь подобное?



Вопрос отправлен: 18.12.2003, 16:22
Отправитель: pav (pav@bk.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Boriss

Доброе время суток, pav!
Нет, конечно, нет. BP и TP написаны для обучения, и лишь пригодны для профессиональной работы.
Это несложно написать ручками в процедуре сравнения. Я так и делал и не задумывался даже, что это может быть стандартом
Нечто подобное используется только в FindFirst для создания маски для поиска файлов. Но и там - это просто ДОС-овские правила оформления строки поиска и Паскаль непричем

Ответ отправлен: 18.12.2003, 17:05
Отправитель: Boriss


Отвечает sir henry

Добрый день, pav!
Вот теперь все стало понятно :).
Действительно, есть такой модуль (regexp), переписаный с Си на Паскаль, для обработки регулярных выражений. Но он довольно старый и неудивительно, что про него никто не помнит :). Скачать можно отсюда:
http://pascal.sources.ru/string/regexp.zip
Вот Вам еще ссылка, правда описание на английском языке:
http://pascal.sources.ru/parsing/rpl60.htm
Впрочем, вот ссылка на страничку, посвященная подобным штукенциям. Посмотрите и выбирете сами, что Вам нужно:
http://pascal.sources.ru/parsing/index1.htm
http://pascal.sources.ru/parsing/index2.htm

Ответ отправлен: 19.12.2003, 04:13
Отправитель: sir henry


Отвечает Drahus

Добрый день, pav!
Я же говорил на pascal.sources.ru должно быть.
Отправил по почте.


Ответ отправлен: 19.12.2003, 16:39
Отправитель: Drahus


 Вопрос № 376

Здравствуйте, эксперты!
Кто нибудь в курсе как, в Borland Pascal 7, проверить объект на существование, перед тем, как вызвать Destructor?



Вопрос отправлен: 18.12.2003, 23:47
Отправитель: Vitally

[Следующий вопрос >>] [Список вопросов]

Отвечает Tancho

Приветствую Вас, Vitally!
Destructor это метод, чие предназначение для коректного освобождение динамической памяти соответствющая переменная объекта, так что если Вы инициализировали переменная объекта то проверяйте ее на nil, перед тем как приложите к ее метод деструкции.

Ответ отправлен: 19.12.2003, 15:29
Отправитель: Tancho


Отвечает sir henry

Добрый день, Vitally!
Можно проверить, не равен ли он NIL, либо, что тоже самое, функцией Assigned(Pointer).

Ответ отправлен: 19.12.2003, 04:29
Отправитель: sir henry


Отвечает vitya

Добрый день, Vitally!
Создавайте объект в куче, предварительно присвоив указателю nil. И при деструкции присваивайте указателю nil. Тогда если указатель не нулевой его можно удалять.


Ответ отправлен: 19.12.2003, 08:39
Отправитель: vitya


Отвечает Boriss

Добрый день, Vitally!
Ну ессно, кто-нибудь да знает, а все остальные пользуются таким приемом:
PointerToObject := New(PPointerToObject, Init);
if PointerToObject <> NIL then
with PointerToObject^ do
begin
Run;
Dispose(Done)
end
else
WriteLn('Недостаточно памяти для работы программы');

Ответ отправлен: 19.12.2003, 09:09
Отправитель: Boriss



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (25)
C / C++ (16)
Perl (4)
Builder / Delphi (20)
Pascal (22)
Basic / VBA (3)
Java / JavaScript (5)
PHP (11)
Криптография (9)
WinAPI (12)
Пользователю
Windows 95/98/Me (36)
Windows NT/2000/XP (51)
"Железо" (25)
Поиск информации (19)
Администратору
Windows NT/2000/XP (26)
Linux / Unix (14)
Юристу
Гражданское право (12)
Семейное право (8)
Трудовое право (9)
КоАП (8)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2003 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное