Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 14 15 16 17 18 [19] 20 21 22 23 .. 34   вперед  Ctrl
 Re: RAD Studio 10.3 Rio  [new]
Фэйтл Эра
Member

Откуда:
Сообщений: 630
defecator
...Оберон - это платформа...

Это - точно плюс?
12 дек 18, 21:03    [21762137]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Vlad F
Member

Откуда:
Сообщений: 692
defecator,

Э-э, батенька, C#-па тоже не бывает без платформы.

P.S. Ваш покорный слуга в начале 90-х преподавал Modula-2 в местном политехе в составе
"платформы" TopSpeed. Ну и за Обероном потом тоже следил с немалым интересом.
Их поезд, к сожалению, уже ушел.
12 дек 18, 21:07    [21762144]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
delphinotes
Member

Откуда: Санкт-Петербург
Сообщений: 312
kealon(Ruslan)
delphinotes
Dmitry Arefiev,

Лишний begin/end? Хотя тогда и with не нужен... не знаю, просто мысли вслух.
Я бы больше радовался расширению конструкции with, чем var...
например?


Какие новости в мире Delphi ?
12 дек 18, 21:23    [21762153]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
defecator
Member

Откуда:
Сообщений: 39204
Vlad F
defecator,

Э-э, батенька, C#-па тоже не бывает без платформы.

P.S. Ваш покорный слуга в начале 90-х преподавал Modula-2 в местном политехе в составе
"платформы" TopSpeed. Ну и за Обероном потом тоже следил с немалым интересом.
Их поезд, к сожалению, уже ушел.


TopSpeed выпускал просто компиляторы.
Платформа - это несколько другое.
Погугли, например, BlueBottle
12 дек 18, 21:33    [21762156]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Vlad F
Member

Откуда:
Сообщений: 692
defecator,

Уж не имеешь лли ввиду под "платформой" и, соответственно, достоинством,
что ему нынче нужна своя пропиетарная ОС? Спасибо, посмеялся. Ты лучше сам
откройна вики про JPI просмотри там до конца, включая, примечания.
И можем вместе обсудить на что было просрано ровно три десятилетия.
А ведь все вполне могло быть по другому.
12 дек 18, 21:47    [21762164]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Фэйтл Эра
Member

Откуда:
Сообщений: 630
defecator
...Платформа - это несколько другое.
Погугли, например, BlueBottle

Ну вот нафига это надо, виндовз-кодерам - то?
12 дек 18, 21:59    [21762174]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
rgreat
Member

Откуда:
Сообщений: 4822
delphinotes
kealon(Ruslan)
пропущено...
например?


Какие новости в мире Delphi ?

Решение есть!
12 дек 18, 22:00    [21762176]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Vlad F
Member

Откуда:
Сообщений: 692
rgreat,

Ви лучше не отвлекайтесь от последних предложений по доступу ко вложенному рекорду.))
12 дек 18, 22:04    [21762183]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
rgreat
Member

Откуда:
Сообщений: 4822
Vlad F,

Тю! Многозадачность нынче везде! :)
12 дек 18, 22:06    [21762187]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Vlad F
Member

Откуда:
Сообщений: 692
rgreat,

Дык, я ж и говорю, 30 лет просрали, а толку где? И иде мы сейчас есть?))
12 дек 18, 22:11    [21762190]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
bk0010
Member

Откуда:
Сообщений: 4736
Оставьте with в покое. Не нравится - не пользуйтесь.
12 дек 18, 22:18    [21762194]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
JaDi
Member

Откуда: Сызрань, Россия
Сообщений: 3984
bk0010
Оставьте with в покое. Не нравится - не пользуйтесь.

Кстати, официально with планировали убрать из делфи. Но видимо вместе с де-факто отказом от ARC от этого шага тоже решили отказаться.
12 дек 18, 22:28    [21762202]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Фэйтл Эра
Member

Откуда:
Сообщений: 630
bk0010
Оставьте with в покое. Не нравится - не пользуйтесь.

Мало того, что переменные в паскале хз где объявляются. Так еще и любители with мути добавляют.
Лучше бы ссылки (как алиасы) из С++ взяли, раз уж цепочки структур описывать невмоготу.

struct A {
	int i;
	int j;
};
struct B {
	A a; 
};

struct C {
	B b;
};

int main()
{
	C c {1, 2};
	auto & a = c.b.a; // Вместо with
	a.i += a.j;   // с.b.a.i += с.b.a.j;
	a.j++;        // с.b.a.j++;
...
12 дек 18, 22:45    [21762215]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4229
Фэйтл Эра,
а вот кстати интересный вопрос, где теперь неявная переменная With удаляется и в какой последовательности

заместо надоедливого try-finally-end было бы очень свежо

delphinotes,
19981110 - а это ИМХО лажа
13 дек 18, 00:19    [21762271]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Фэйтл Эра
Member

Откуда:
Сообщений: 630
kealon(Ruslan),
имхо, нет там переменной, вообще, алиас лишь ибо уже существующей.

Все на уровне компилятора. А может, и препроцессора... :)
Насчет времени жизни - никаких проблем, присвоение auto & a = b; может быть выполнено лишь там, где доступна b, а если у а более ограниченная область видимости, чем у b - то и ладно - она всего ж алиас, а деструктор алиаса при выходе из его области видимости не вызывается, он становится всего лишь недоступным.
13 дек 18, 00:38    [21762282]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
fraks
Member

Откуда: Новосибирск
Сообщений: 1416
Beltar
Поддерживаю, with надо запрещать.


А у меня большинство форм вызывается вот так:

function OrderDocs(anord: integer): boolean;
begin
  with TFrmOrderDocs.Create(Application) do begin
    Fnord     := anord;
    try
      PageControl.ActivePageIndex := 0;
      F5_D;
      ActiveControl := VTreeD;
      Result := mrOk = ShowModal;
    finally
      Free;
    end;{try}
  end;{with}
end;

Очень удобно.
Правда это единственное место где я применяю with.
В остальных случаях либо полная нотация, либо завожу переменную-ссылку, в нее явно записываю чего там with, и через нее обращаюсь.
Основной минус в with - не к чему приписать точку что бы увидеть в IDE какие свойства/методы имеются.
13 дек 18, 04:24    [21762328]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4229
Фэйтл Эра
kealon(Ruslan),
имхо, нет там переменной, вообще, алиас лишь ибо уже существующей.

Все на уровне компилятора. А может, и препроцессора... :)
Насчет времени жизни - никаких проблем, присвоение auto & a = b; может быть выполнено лишь там, где доступна b, а если у а более ограниченная область видимости, чем у b - то и ладно - она всего ж алиас, а деструктор алиаса при выходе из его области видимости не вызывается, он становится всего лишь недоступным.
уверен? а если я туда результат функции вкину
with Lock() do begin
  ...
end;
13 дек 18, 08:37    [21762379]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4229
Фэйтл Эра
bk0010
Оставьте with в покое. Не нравится - не пользуйтесь.

Мало того, что переменные в паскале хз где объявляются. Так еще и любители with мути добавляют.
Лучше бы ссылки (как алиасы) из С++ взяли, раз уж цепочки структур описывать невмоготу.

+
struct A {
	int i;
	int j;
};
struct B {
	A a; 
};

struct C {
	B b;
};

int main()
{
	C c {1, 2};
	auto & a = c.b.a; // Вместо with
	a.i += a.j;   // с.b.a.i += с.b.a.j;
	a.j++;        // с.b.a.j++;
...
это давно уже в паскале делается, абсолютно аналогично, за исключением auto
13 дек 18, 08:40    [21762381]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Фэйтл Эра
Member

Откуда:
Сообщений: 630
kealon(Ruslan),

не, не делается, разве что через когда штаны через голову с указателями, а это совсем не то, что ссылка.
13 дек 18, 08:42    [21762382]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4229
Фэйтл Эра
kealon(Ruslan),

не, не делается, разве что через когда штаны через голову с указателями, а это совсем не то, что ссылка.
нет никакой разницы как указатель называть, а то как его оптимизирует уже от компилятор зависит
13 дек 18, 08:57    [21762395]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4229
Фэйтл Эра,

21762505 - он не туда написал
13 дек 18, 10:43    [21762544]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4229
Фэйтл Эра,

а вообще твой код для современных плюсов уже потенциальное UB
13 дек 18, 10:45    [21762546]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
Vlad F
Member

Откуда:
Сообщений: 692
kealon(Ruslan)
Фэйтл Эра,

21762505 - он не туда написал

Но он же и там с этой своей "проблемой" опять выскочил.))
13 дек 18, 10:52    [21762557]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
AWSVladimir
Member

Откуда:
Сообщений: 866
Раньше конструкции WITH, не хило так оптимизировал компилятор и если нужен был быстрый код, то это был один из маленьких плюсиков.

Правда при разборе кода который глючил, мне встретилась конструкция:
with Obj1,Obj2,Obj3.. do
Где то 8 объектов, отлаживать было просто не возможно.
Убрал with, все быстро отладил.
13 дек 18, 18:46    [21763388]     Ответить | Цитировать Сообщить модератору
 Re: RAD Studio 10.3 Rio  [new]
bk0010
Member

Откуда:
Сообщений: 4736
Фэйтл Эра
auto & a = c.b.a; // Вместо with
Этого "вместо with" мало, with еще хорошо выделяет блоки программы, с ним код читать удобнее (если, конечно, писать с умом, а не что-то типа
with a,b,c do e[f]=g[f]
)
13 дек 18, 21:50    [21763475]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 14 15 16 17 18 [19] 20 21 22 23 .. 34   вперед  Ctrl
Все форумы / Delphi Ответить