12 сентября 2021

Delphi 11. Разделитель цифр в числовых литералах

    В Delphi 11 Alexandria разработчики добавили разделитель цифр для числовых литералов (констант). Он улучшает читаемость числовых литералов с большим количеством цифр. В качестве разделителя используется символ подчеркивания "_". Символы разделителя могут быть добавлены после любого количества цифр. Они игнорируется при синтаксическом анализе и компиляции кода, так как используются только для форматирования числа и никак не влияют на его значение.
const
  ciDEC = 1_000_000;
  ciHEX = $0F_42_40;
  ciBIN = %1111_0100_0010_0100_0000;
  
var
  i: Integer;
begin
  i := 1_000_000;
  i := $0F_42_40;
  i := %1111_0100_0010_0100_0000;
Этот синтаксис позаимствован у C# 7.0.

4 комментария:

  1. Одобряю :) У C# много, что можно полезного позаимствовать... Хотя правильно было бы писать "украсть"

    ОтветитьУдалить
    Ответы
    1. Справедливости ради, C# у Delphi "украл" всё что смог ;-)

      Удалить
    2. Справедливости ради Андерс Хейлсберг, автор С#, является автором Паскаля, как и самого дельфи :) Нельзя украсть у самого себя :)

      Удалить
    3. Он является автором компилятора Паскаля, не самого языка. Язык создал Никлаус Вирт.

      Удалить