|
|
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Символ "~" лучше определить как пространство имен окружающее текущий блок, т.е. Код: sql 1. 2. 3. 4. 5. эквивалентен Код: sql 1. 2. и Код: sql 1. 2. 3. 4. 5. 6. 7. 8. приводит битмап к размерам формы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 00:54 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
x1ca4064 IMHO, оператор width лучше реализован в VisualBasic : свойства, которые относятся к переменной из with предваряются точкой, сам символ, конечно, не важен, можно заменить на "~", например. ... но когда используются свойства в методах, это было бы удобно: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. В такой конструкции происходит присвоение битмапу размеров формы. В таком коротком куске кода необходимости отмечать что-то точкой или любым другим символом нет никакой необходимости. И так всё ясно. А в кусках кода, которые не влезают на один экран оператор wit h лучше не использовать. Даже если код пишется одним автором, а не группой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 02:42 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Хотя да. Был не прав не поняв сути предложения. Но в любом случае я за явное указание: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 03:30 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
northener, Код: pascal 1. 2. И короче и надежней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 05:22 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
rgreat northener, Код: pascal 1. 2. И короче и надежней. По ощущениям: бывают ситуации, когда с with получается наглядней, поскольку производится оформление в виде блока с соответствующим отступом, например: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 08:58 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Умеет кто-нибудь искать задачи на https://quality.embarcadero.com/, касающиеся улучшения работы оператора "with"? Такое ощущение, что движок поиска удаляет это слово :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 09:00 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
DmSer, Если хочешь зафичреквестить, то такая попытка уже была: https://quality.embarcadero.com/browse/RSP-21420 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 10:08 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey DmSer, Если хочешь зафичреквестить, то такая попытка уже была: https://quality.embarcadero.com/browse/RSP-21420 Там автор хрень какую-то предложил, в итоге Марко Канто предложил выпилить конструкцию with :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 10:37 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Такой запрос хочу к ним запулить: The "with" operator in Pascal is very useful. In many cases, it improves code readability. Many programmers who communicate in the Delphi forum use it, like it, but note that there are a number of problems. Here are some of the problems: 1) it is inconvenient to debug code in the with block; 2) the danger of using the "with" operator for several elements at once; 3) if there are several variables with the same name in different scopes, it is difficult to understand which variable the "with"operator will choose. To solve these problems, I suggest adding the ability to declare aliases in the "with" operator. For example, this way (using the keyword "as" as it is done in the SQL language): with MyArrayOfRecords[i] as r, GetMyObject() as o do begin r. IntVal: = 1; r. StrVal : = 'Hello'; o. MyRec: = r; end; In addition, this would make it easier to modify elements of arrays of records (at the moment, you have to specify the array name every time or use pointers, which worsens the readability of the code). I know that the "as" operator in Pascal is already used in some cases (type casting, interface query), so you can use another keyword, this is not the most important thing. You can also consider declaring aliases that have been implemented in the Oxygene language: https://docs.elementscompiler.com/Oxygene/Statements/With/ (although, it may be less readability) Кто в английском силён, может что перефразировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 11:58 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
DmSer в итоге Марко Канто предложил выпилить конструкцию with :) Ну, он об этом давно (где-то, в районе выхода XE4) уже говорил, ещё когда обсуждался перевод "классического" кода на мобильный нексджен. Впрочем, он же говорил и о том, что не видит причин для добавления инлайновых переменных , а через релиз они появились :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 12:17 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
DmSer The "with" operator in Pascal is very useful.... => Pascal’s "WITH" statement is extremely harmful and potentially dangerous. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 18:48 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
ёёёёё DmSer пропущено... => Pascal’s "WITH" statement is extremely harmful and potentially dangerous. С таким лучше и не пытаться :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 19:05 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
DmSer Pascal’s "WITH" statement is extremely harmful and potentially dangerous Правильнее сформулировать так :) авторPascal’s "WITH" statement is potentially dangerous, and can be extremely harmful in curved hands, as russians will say. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 19:22 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Dmitry Arefiev автор...and can be extremely harmful in curved hands, as russians will say. ... in the crooked hands of Russian programmers. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 19:38 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
да почему же "Russian" ... Одинаково применимо ко всей планете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 19:43 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Прошу голосовать! :) https://quality.embarcadero.com/browse/RSP-27468?filter=-2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 21:03 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
DmSer Прошу голосовать! :) https://quality.embarcadero.com/browse/RSP-27468?filter=-2 Начнутся новые тараканы, типа конфликтов имен with-алиасов с чем-нибудь. Лучше бы with вообще запретить, а ввести ссылки, как в c++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 21:10 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
ёёёёё Начнутся новые тараканы, типа конфликтов имен with-алиасов с чем-нибудь. С чем-нибудь это с чем? Псевдоним перекрывает любые видимые (в случае наличия локальных - ошибка компиляции) идентификаторы и действует в рамках выражения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 21:18 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey ёёёёё Начнутся новые тараканы, типа конфликтов имен with-алиасов с чем-нибудь. С чем-нибудь это с чем? Псевдоним перекрывает любые видимые (в случае наличия локальных - ошибка компиляции) идентификаторы и действует в рамках выражения. Будет миленько, когда внутри with имена членов "оголяемой" структуры совпадут с with-алиасом. ... А ссылка в с++ - это псевдоним, только без глупого with. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 21:30 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
ёёёёё Будет миленько, когда внутри with имена членов "оголяемой" структуры совпадут с with-алиасом. ... Доступ к членам только через псевдоним. Неоднозначности там просто не может возникнуть. Или я не понимаю о чём ты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 22:01 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey ёёёёё Будет миленько, когда внутри with имена членов "оголяемой" структуры совпадут с with-алиасом. ... Доступ к членам только через псевдоним. Неоднозначности там просто не может возникнуть. Или я не понимаю о чём ты. То есть, прежний паскаль-код компилироваться не будет? Заради чего тогда вообще with сохранять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 22:35 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
ёёёёё То есть, прежний паскаль-код компилироваться не будет? Ну да. ёёёёё Заради чего тогда вообще with сохранять? Удобная штука, иногда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 23:03 |
|
||
|
with и без with
|
|||
|---|---|---|---|
|
#18+
То есть, прежний паскаль-код компилироваться не будет? Почему не будет? Прежний код будет работать как и прежде. Но если задан алиас, то работать только через алиас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2020, 23:20 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39915936&tid=2038681]: |
0ms |
get settings: |
7ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
92ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 399ms |

| 0 / 0 |
