Size: a a a

2020 October 15

Ш

Шляпник in Delphi & Lazarus
Dmitry Belkevich
Плохо ещё то, что переменную можно произвольно переназначать прямо по ходу. Будет каша со временем, к бабке не ходи
😭
источник

ED

Ed Doc in Delphi & Lazarus
Renat Suleymanov
FPC держится
Именно это все ещё вселяет надежду и греет душу 😊
источник

N

Nik in Delphi & Lazarus
Dmitry Belkevich
 TUniPoolRecQuery = record
strict private
  FDBQuery: TUniQuery;
public
  class operator Initialize(out ADest: TUniPoolRecQuery);
  class operator Finalize(var ADest: TUniPoolRecQuery);
  property DBQuery: TUniQuery read FDBQuery write FDBQuery;
end;

{ TUniPoolRecQuery }

class operator TUniPoolRecQuery.Finalize(var ADest: TUniPoolRecQuery);
begin
DBPool.FreeQuery(ADest.FDBQuery)
end;

class operator TUniPoolRecQuery.Initialize(out ADest: TUniPoolRecQuery);
begin
ADest.FDBQuery := DBPool.GetQuery;
end;

юзать так:

var PoolRec: TUniPoolRecQuery;
PoolRec.DBQuery...

try/finally не нужен. при заходе в зону видимости запись инициализируется, при выходе - финализируется, проверил. один раз и то  и то
Кривой код
источник

N

Nik in Delphi & Lazarus
Содержимое методов местами перепутал
источник

DB

Dmitry Belkevich in Delphi & Lazarus
Nik
Содержимое методов местами перепутал
о блин ) 😭 fixed
источник
2020 October 16

KB

Kit Bayun in Delphi & Lazarus
источник

KB

Kit Bayun in Delphi & Lazarus
источник

VA

Viktor Akselrod in Delphi & Lazarus
с подключением 🙂
источник

KB

Kit Bayun in Delphi & Lazarus
пасибо
источник

DB

Dmitry Belkevich in Delphi & Lazarus
а как тебе такое, Илон Маск? 😂

   var StringListRec: TStringListRec; //запись для поддержки автоматического создания и разрушения стринглиста
  var StringList: TStringList := StringListRec.SL; //вытаскиваем стринглист в переменную, что бы не писать with и вообще не
менять код (в случае рефакторинга)
  StringList.Add('test'); //всё работает
источник

SB

Sergey Bodrov in Delphi & Lazarus
Dmitry Belkevich
а как тебе такое, Илон Маск? 😂

   var StringListRec: TStringListRec; //запись для поддержки автоматического создания и разрушения стринглиста
  var StringList: TStringList := StringListRec.SL; //вытаскиваем стринглист в переменную, что бы не писать with и вообще не
менять код (в случае рефакторинга)
  StringList.Add('test'); //всё работает
Осталось только добавить возможность обьявлять экземпляры классов как переменные:
var sl: object of TStringList
источник

GB

George Bakhtadze in Delphi & Lazarus
Dmitry Belkevich
а как тебе такое, Илон Маск? 😂

   var StringListRec: TStringListRec; //запись для поддержки автоматического создания и разрушения стринглиста
  var StringList: TStringList := StringListRec.SL; //вытаскиваем стринглист в переменную, что бы не писать with и вообще не
менять код (в случае рефакторинга)
  StringList.Add('test'); //всё работает
ересь! где удаление объектов, что за джава??
источник

DB

Dmitry Belkevich in Delphi & Lazarus
George Bakhtadze
ересь! где удаление объектов, что за джава??
выше читай )
источник

GB

George Bakhtadze in Delphi & Lazarus
Dmitry Belkevich
выше читай )
да ладно, я таким балуюсь уже лет 10
источник

GB

George Bakhtadze in Delphi & Lazarus
на интерфейсах еще. да и тут обсуждали кстати
источник

DB

Dmitry Belkevich in Delphi & Lazarus
в интерфейсах сильно не хватает свойств. в отличие от записей. неудобно. гора кода, геттеров и сеттеров
источник

DB

Dmitry Belkevich in Delphi & Lazarus
в записях пока не хватает наследования. так то, со временем от классов можно было бы вообще отказаться )
источник

АВ

Александр В... in Delphi & Lazarus
Dmitry Belkevich
а как тебе такое, Илон Маск? 😂

   var StringListRec: TStringListRec; //запись для поддержки автоматического создания и разрушения стринглиста
  var StringList: TStringList := StringListRec.SL; //вытаскиваем стринглист в переменную, что бы не писать with и вообще не
менять код (в случае рефакторинга)
  StringList.Add('test'); //всё работает
Какой ад.
источник

MS

Mr Smith in Delphi & Lazarus
источник

VA

Viktor Akselrod in Delphi & Lazarus
Dmitry Belkevich
в интерфейсах сильно не хватает свойств. в отличие от записей. неудобно. гора кода, геттеров и сеттеров
свойства есть в интерфейсах, куда же они подевались
источник