Модератор: Модераторы
Ask писал(а):daesher писал(а):конструкции вида PByte(a)[3] вместо PByteArray(a)^[3]
Арифметика с указателями -- это, конечно, зло (хотя в последней версии сделали немного удобнее),
но в данном конкретном случае не вижу разницы -- range check что так, что этак бесполезен,
а визуально первый вариант даже приятнее.
Ask писал(а):Потому что глупо ставить целью дизайна языка "сделать не как в Си".
alexs писал(а):Вы абсолютно не правильно поняли суть наших высказываний.
Данные операторы не способствуют повышению читабильности исходного кода.
FGraphPoints[i - FLoBound].X += AxisToGraphY(Source[i]^.YList[AIndex])
FGraphPoints[i - FLoBound].X := FGraphPoints[i - FLoBound].X + AxisToGraphY(Source[i]^.YList[AIndex])
with FGraphPoints[i - FLoBound] do X := X + AxisToGraphY(Source[i]^.YList[AIndex])
alexs писал(а):Смысыл всех паскалеподобных языков в том, что они отчасти сами являются документацией. Т.е. максимально приближены к естественному языку. С в этом смысле гораздо хуже приспособлен для чтения исходных текстов.
Т.е. максимально приближены к естественному языку
Мне тоже более понятны += чем inc().
(@A and @B)
(&A & &B)
Не ну правда, зачем вы себя мучаете пишите на С, зачем портить себя и свой мозг .... и ..... Pascal-ем.
a := ifthen(F,b,c);
Обратите внимание на модуль RTL.Math. В списке функций имеется ifthen( ), с помощью которой в FPC/Delphi ваша конструкция примет вид:
var
A,B: Integer;
C: Real;
begin
A := 1;
B := 0;
C := ifthen(B<>0,A/B,A);
end;
if (x=1) {}
вместо
if (x==1) {}
x++=1
Ask писал(а): Си предназначен для системного программирования, в то время как Object Pascal -- для прикладного.
Mr.Smart писал(а):все находятся в "анальном" рабстве упомянутой фирмы и это отрицают!
Вернуться в Free Pascal Compiler
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2