VadimLou
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Код: procedure FreeAndNil(var Obj); inline; overload; var Temp: TObject; begin Temp := TObject(Obj); Pointer(Obj) := nil; Temp.Free; end; procedure FreeAndNil(var Obj, Obj2); overload; var Temp: TObject; begin Temp := TObject(Obj); Pointer(Obj) := nil; try Temp.Free; finally Temp := TObject(Obj2); Pointer(Obj2) := nil; Temp.Free; end; end; procedure FreeAndNil(var Obj, Obj2, Obj3); overload; var Temp: TObject; begin Temp := TObject(Obj); Pointer(Obj) := nil; try Temp.Free; finally Temp := TObject(Obj2); Pointer(Obj2) := nil; try Temp.Free; finally Temp := TObject(Obj2); Pointer(Obj2) := nil; try Temp.Free; finally Temp := TObject(Obj3); Pointer(Obj3) := nil; Temp.Free; end; end; end; end; procedure FreeAndNil(var Obj, Obj2, Obj3, Obj4); overload; var Temp: TObject; begin Temp := TObject(Obj); Pointer(Obj) := nil; try Temp.Free; finally Temp := TObject(Obj2); Pointer(Obj2) := nil; try Temp.Free; finally Temp := TObject(Obj2); Pointer(Obj2) := nil; try Temp.Free; finally Temp := TObject(Obj3); Pointer(Obj3) := nil; try Temp.Free; finally Temp := TObject(Obj4); Pointer(Obj4) := nil; Temp.Free; end; end; end; end; end; и т.д. ... |
| Всего записей: 702 | Зарегистр. 22-07-2004 | Отправлено: 00:22 30-01-2018 | Исправлено: VadimLou, 13:31 31-01-2018 |
|