Чтобы инициализировать записи Delphi, я всегда добавлял метод (класс или объект), который инициализировал бы известные хорошие значения по умолчанию. Delphi также позволяет определять записи "конструкторы" с параметрами, но вы не можете определить свой собственный конструктор без параметров.
TSomeRecord = record
 Value1: double;
 Value2: double;
 procedure Init;
end;
procedure TSomeRecord.Init;
begin
  Value1 := MaxDouble;
  Value2 := Pi;
end; 
Учитывая вышеприведенную запись, нет предупреждения о том, что запись не была инициализирована. Разработчики могут игнорировать вызов Init в записи. Есть ли способ  автоматически инициализировать записи по умолчанию, потенциально больше, чем просто FillChar;
Например
var 
  LSomeRecord: TSomeRecord
begin
  // someone forgot to call LSomeRecord.Init here
  FunctionThatTakesDefaultSomeRecord(LSomeRecord);
end; 
Как автоматически записать запись в мои настройки по умолчанию?
[Примечание] Я не хочу изменять проблему после ответа. Любые читатели должны читать комментарии о лучших методах использования методов класса для инициализации вместо метода мутирующих объектов.