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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.10.2014, 20:51   #11
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Ну я прочел, что nil нужно для освобождения памяти. В принципе, не обязательно, наверное.
Это даже не просто не обязательно а чрезвычайно опасно
nil ниразу не освобождает память. SetLength(...,0) - вот что нужно вызывать для освобождения памяти.
nil используется для освобождения памяти в СОМ модели, при работе с интерфейсами. Не знаю где ты такую чепуху прочел, но это скорее бред или ты не так понял.
Цитата:
фильтр применяется не на все BMP-шки
Видимо твоя формула дает выход за пределы массива.
Попробуй поставить
Код:
    for i:=1 to BMPWidth-2 do
    for j:=1 to BMPHeight-2 do
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 25.10.2014, 21:10   #12
zzdxw
Пользователь
 
Регистрация: 05.10.2014
Сообщений: 24
По умолчанию

Да, это сработало. Спасибо!
С одним вопросом разобрался А их у меня в дальнейшем, к сожалению, будет много...
Думаю, эту тему можно считать закрытой. Еще раз, спасибо.
zzdxw вне форума Ответить с цитированием
Старый 25.10.2014, 22:03   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Это даже не просто не обязательно а чрезвычайно опасно
nil ниразу не освобождает память. SetLength(...,0) - вот что нужно вызывать для освобождения памяти.
Виталь, не путай чела. SetLength(a,0) и a:=nil эквивалентны по результату для динамических массивов. Разве что в CPU чуть больше кода для 1-го
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

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

Это если повезет, и компиль тоже так подумает. Только вот так не всегда бывает к сожалению.
Цитата:
А их у меня в дальнейшем, к сожалению, будет много...
Это малозначимо.
Важно то как ты их будешь задавать. Текст ошибки, код, подробности ускорят получение правильных и точных ответов.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.10.2014, 01:51   #15
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,877
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Это если повезет, и компиль тоже так подумает. Только вот так не всегда бывает к сожалению.
Хм. Пример того что "так не всегда бывает к сожалению" можешь представить?
northener вне форума Ответить с цитированием
Старый 26.10.2014, 10:47   #16
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Зачем? Ради критики?
А смысл? Да, на типированных массивах можно полагаться на компилятор. А потом автор будет делать так:
Код:
var p:pointer;
begin
 getmem(p,120);
 p:=nil;
end;
Наивно полагая что и тут все прокатит.
Мне то все равно кто как пишет, просто потом как говорил Форест "щит хэппининг".
Я с таким ПО каждый день вожусь, а оно все падает и падает, и авторам не докажешь что вот там-то так писать не нужно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.10.2014, 11:10   #17
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Да, тоже использую только SetLength(...,0). Мало того и локальные массивы явно освобождаю. Но, Платон мне друг, но истина дороже
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 26.10.2014, 11:33   #18
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Может истина и дороже, только и дорого ее содержание, как показывает этот год. Поэтому на истину опираться не всегда можно.
В любом случае чтобы строить дом хорошо, нужно делать это по технологии а не по интуиции.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Статические массивы + Си narco3 Помощь студентам 2 13.10.2012 00:59
[Pascal] Динамические и статические структуры Bolverk Фриланс 2 27.12.2011 19:00
[Pascal] Динамические и статические структуры Bolverk Помощь студентам 4 27.12.2011 14:59
Динамические двумерные массивы Razdolbam Помощь студентам 0 14.03.2011 15:37
Статические массивы aus Общие вопросы C/C++ 1 17.10.2010 15:32