![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Освобождение ресурса в finally
Arinyshka © (2008-04-23 12:17:00)
Страницы: < 1 2 ... 23 24 25 26 27 28 29 ... 32 33 >
Не подскажете еще один момент:
Есть процедура, выглядит примерно так
procedure TSetPayFrm.BtnAddImageClick(Sender: TObject);
var TempBitmap:TBitmap;
begin
if not(opendialog1.Execute) then exit;
try
TempBitmap := TBitmap.Create;
TempBitmap.LoadFromFile(OpenDialog1.FileName);
finally
TempBitmap.Free;
end;
end;
На освобождение TempBitmap.Free; выдает варнинг
[Warning] uSetPaymentMain.pas(313): Variable 'TempBitmap' might not have been initialized
Не смертельно, но непонятно... почему варнинг? При изменениии условия и включении всей конструкции в один блок begin..end ситуация не менялась.
ZENsan (2008-04-24 16:24:00) [501]
> Ты чего юлить начал?
Делфи 2007 синтаксис
ZENsan (2008-04-24 16:23:00) [502]Значит у тебя в 7 делфи они есть? Как и класс-переменные?
Anatoly Podgoretsky (2008-04-24 16:23:00) [503]> ZENsan (24.04.2008 16:15:26) [146]
Ты чего юлить начал?
Palladin (2008-04-24 16:19:00) [504]
> ZENsan © (24.04.08 16:17) [147]
это статический метод класс, тебе уже сказали, что ты мягкое с теплым перепутал...
короче, вердикт: LMD
ZENsan (2008-04-24 16:18:00) [505]Ты не можеш также получать доступ к полям класса (которие не класс-поля)..
ZENsan (2008-04-24 16:17:00) [506]"class static methods have no Self parameter at all" - официальный источник.
Это про Делфи 2007. Там нету вообще Селф.
Ega23 (2008-04-24 16:15:00) [507]
> TMyClass.SomeMthod(params, params,...)
>
> Этот метод не имеет указателя Self - одни из главных отличий
> класс-методов от методов класса. Не путать.
С чего ты взял, что внутри class procedure или class function Self нельзя использовать? Посто там он указатель на тип класса, на не на экземпляр.
ZENsan (2008-04-24 16:15:00) [508]что такое
type
TMyClass = class
class var x: Integer;
end;
вы тоже не знаете или у вас уже в 4 делфи это есть...
Palladin (2008-04-24 16:12:00) [509]
> ZENsan © (24.04.08 16:09) [142]
ты реально болен...
ZENsan (2008-04-24 16:09:00) [510]Класс-метод это метод, который может быть вызван из Типа, а не объекта.
TMyClass.SomeMthod(params, params,...)
Этот метод не имеет указателя Self - одни из главных отличий класс-методов от методов класса. Не путать.
А вы мне втираете virtual.... они не могут быть virtual.. не могут быть dynamic, но может быть astract.
Это про Delphi 2007 если что.
Вы меня извините конечно за мой русский корявый может - я не в России живу. Но я подозреваю вы не присмотрелись в разницу между "Метод класса" и "Класс-метод". Ну зайдите кот-нибудь на оф. сайт http://dn.codegear.com/article/34324и прочтите...я же не просто так пытаюсь вам пояснить.. Я говорю про Класс-методы а не про методы класса, которые ещё паскале были. В добавок к КЛАСС-МЕТОДАМ добаивлась возможность КЛАСС-ПЕРЕМЕННИХ:
var
X: TmyClass;
i: Integer;
begin
i := TMyClass.GetTickCount;//например
end;
Ну плиизз может хоть до кого-то дойдёт наконец о чём я говорю... или скажите как это по русски КЛАСС-МЕТОД.....
end;
Anatoly Podgoretsky (2008-04-24 16:09:00) [511]> sniknik (24.04.2008 15:48:19) [139]
Вот только на нас обжегся, заставили писать нормально, теперь хвастаться можно.
Anatoly Podgoretsky (2008-04-24 16:08:00) [512]> Palladin (24.04.2008 15:34:15) [135]
Лучше всего Д1
Ega23 (2008-04-24 16:04:00) [513]
> ожидали чегото иного от использующего транслит?
> имхо, это показатель. нынче возможность писать нормально
> есть, а транслит используют только любители "погнуть пальцы".
Это что, новая мода какая-то?
sniknik (2008-04-24 15:48:00) [514]ожидали чегото иного от использующего транслит?
имхо, это показатель. нынче возможность писать нормально есть, а транслит используют только любители "погнуть пальцы".
Восхищенный (2008-04-24 15:41:00) [515]> ZENsan © (24.04.08 15:23) [123]
> До 7 делфи вы можете описать только динамические методы класа.
А также виртуальные, статические, абстрактные и классовые (которые, в свою очередь, тоже могут быть виртуальными и т.д.)
> И статические были только конструктор/деструктор...
Так. На этом базар заканчиваем. Если человек не знает:
- что статические методы в Delphi были тоже всегда (притом любые);
- что деструктор в Delphi статическим вообще никогда не был;
- что начиная с класса TComponent конструктор всегда был виртуальным...
но, не зная даже такой элементарщины, еще и спорит (постоянно путаясь в терминологии) - то этот человек называется "воинствующий чайник".
Иначе говоря - "ламер". Спорить с такими бесполезно. И не нужно.
Palladin (2008-04-24 15:39:00) [516]
> Bolshe ja s vami na etu temu obshatsja ne budu...
ну и слава богу...
ZENsan (2008-04-24 15:38:00) [517]Удалено модератором
ZENsan (2008-04-24 15:34:00) [518]Удалено модератором
Palladin (2008-04-24 15:34:00) [519]
> ZENsan © (24.04.08 15:32) [131]
да ты достал уже, все прекрасно понимают что ты тут несешь
Type
TShowMessage=Class
Class Procedure ShowMessage;
End;
...
TShowMessage.ShowMessage
...
найди любой компилятор старый и откомпилируй
Anatoly Podgoretsky (2008-04-24 15:33:00) [520]> Palladin (24.04.2008 15:24:04) [124]
Жалко мне Борланда и проект JEDI