какая же должна быть типизация у идеала?
и почему
Модератор: Модераторы
program cast;
var
s: string;
i: integer;
r: real;
begin
s := '578'; //комментарии излишни
(string) r := s + '.5'; //r = 578.5
i := 10 + (integer) s; //i = 588
i := (integer) (r + i + 0.5); //i = 579 + 588, посчитайте, мне влом, но там целое число
end.
Я считаю что и простые типы должны быть объектами, т.е. иметь набор методов. Тогда реализуя метод __convert__(toType) (подчеркивания я взял из Python) можно описать преобразование любого типа в любой.
Что касается синтаксиса преобразования, то S := String(1 + 2), я считаю более приемлемым.
а что это никто не предлагает вообще убрать объявление переменных?
В РНР есть область видимости и существования, регулируемая вплоть до блока операторов. Если я создал переменную в цикле, я могу быть уверен, что за пределами цикла переменной не будет.
var
I: Integer;
S: String;
begin
I := 12;
S := '__' + I + '__'; {S := '__' + I.__convert__(String) + '__';}
Vadim писал(а):Вот если бы изобрести универсальный тип, который вообще не нужно было бы никуда конвертировать...
набор процедур для выполнения арифметики без преобразования к цичслам уже сейчас есть
Вернуться в Компилятор / язык программирования
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7