|
|
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток!!! Задам вопрос, но для кого-то он покажется глупым. Для выхода из вложенных циклов можно эти циклы затолкать в отдельную функцию или процедуру и вместо метки просто выходить из функции/процедур. Минус такого метода это глобальные переменые, с которыми будет работать функция/процедура. Вопрос в следующем - глобальные переменные еще большее зло или я что-то совсем не так понимаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 01:28 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
Ёшкин_КотВопрос в следующем - глобальные переменные еще большее зло или я что-то совсем не так понимаю? Ты что-то начал подозревать. Зло - не безусловный переход по метке, и не глобальная переменная - сами по себе. Зло - менее очевидный и менее гибкий код. Если задача требует гото(и оно позволяет написать читабельный код), то нужно его использовать. С глобальными переменными - так же. Проблема гото в 2017-м году надумана, она была, когда фортрановцы и кубайсиковцы, свое гото лепили на каждом шагу, пописывая код на структурных языках типа си и паскаля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 02:26 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
С глобальной переменной код становится однопоточным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 07:01 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
Dima TС глобальной переменной код становится однопоточным. не обязательно, в TLS можно положить глобальную переменную ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 07:10 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
Изопропилв TLS можно положить глобальную переменную В XP с этим есть проблемы https://msdn.microsoft.com/ru-ru/library/6yh4a9k1.aspx В операционных системах Windows до Windows Vista __declspec(thread) имеет некоторые ограничения. Если библиотека DLL объявляет любые данные или объекты как __declspec(thread), это может привести к сбою защиты при динамической загрузке. После загрузки библиотеки DLL с помощью метода LoadLibrary всякий раз, когда код ссылается на данные __declspec (thread), происходит сбой в системе. Поскольку пространство глобальных переменных для потока выделяется во время выполнения, размер данного пространства основан на расчете требований приложению, а также требований всех библиотек DLL, которые привязываются статически. При использовании LoadLibrary невозможно расширить это пространство, чтобы объявлять локальные переменные потока с помощью __declspec(thread). Используйте API-интерфейсы TLS, такие как TlsAlloc, в вашей библиотеке DLL, чтобы выделить TLS, если DLL может загружаться с помощью LoadLibrary. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 07:39 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
Ёшкин_КотДоброго времени суток!!! Задам вопрос, но для кого-то он покажется глупым. Для выхода из вложенных циклов можно эти циклы затолкать в отдельную функцию или процедуру и вместо метки просто выходить из функции/процедур. Минус такого метода это глобальные переменые, с которыми будет работать функция/процедура. Вопрос в следующем - глобальные переменные еще большее зло или я что-то совсем не так понимаю? Зачем глобальные переменные, можно использовать темплэйты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 07:41 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
Dima TС глобальной переменной код становится однопоточным. Транзакционная память - наше всё. Ну и опять же, не только лишь весь код - должен быть многопоточным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 08:19 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
Dima TИзопропилв TLS можно положить глобальную переменную В XP с этим есть проблемы https://msdn.microsoft.com/ru-ru/library/6yh4a9k1.aspx В операционных системах Windows до Windows Vista __declspec(thread) имеет некоторые ограничения. Если библиотека DLL объявляет любые данные или объекты как __declspec(thread), это может привести к сбою защиты при динамической загрузке. После загрузки библиотеки DLL с помощью метода LoadLibrary всякий раз, когда код ссылается на данные __declspec (thread), происходит сбой в системе. Поскольку пространство глобальных переменных для потока выделяется во время выполнения, размер данного пространства основан на расчете требований приложению, а также требований всех библиотек DLL, которые привязываются статически. При использовании LoadLibrary невозможно расширить это пространство, чтобы объявлять локальные переменные потока с помощью __declspec(thread). Используйте API-интерфейсы TLS, такие как TlsAlloc, в вашей библиотеке DLL, чтобы выделить TLS, если DLL может загружаться с помощью LoadLibrary. Это никак не мешает работать OpenGl ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 09:25 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
Чегой то вы умничаете? =) Человек наверное про Бейсик спрашивает, в котором нет break/continue ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 09:25 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
ИзопропилЭто никак не мешает работать OpenGl Невозможно и неудобно это разные вещи. Я про второе . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 09:41 |
|
||
|
Безусловный переход или глобальные переменные
|
|||
|---|---|---|---|
|
#18+
SiemarglЧегой то вы умничаете? =) Человек наверное про Бейсик спрашивает, в котором нет break/continue ну он же не сказал, на чём он пишет. Может лямбды ему помогут дабы не пользовать глобальные переменные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 10:11 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=39451823&tid=1340409]: |
0ms |
get settings: |
7ms |
get forum list: |
24ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
829ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 1145ms |

| 0 / 0 |
