|
1 / 1 / 0
Регистрация: 25.08.2021
Сообщений: 92
|
|||||||||||
Область видимости переменной31.08.2021, 05:43. Показов 2337. Ответов 17
Метки нет (Все метки)
Например, нужна переменная для цикла while. Объявлять внутри цикла - плохая идея, объявлять вне области видимости - тоже такое себе
И можно ограничить область видимости:
0
|
|||||||||||
| 31.08.2021, 05:43 | |
|
Ответы с готовыми решениями:
17
Область видимости переменной Область видимости переменной Область видимости переменной |
|
252 / 185 / 47
Регистрация: 31.01.2021
Сообщений: 934
|
|
| 31.08.2021, 06:27 | |
|
Переменные с малым sizeof, в стэк, с большим sizeof лучше в кучу. ИМХО.
![]() Добавлено через 2 минуты Предпочтительней считались динамические переменные.
0
|
|
|
фрилансер
6444 / 5637 / 1128
Регистрация: 11.10.2019
Сообщений: 14,998
|
||||||||||||
| 31.08.2021, 08:05 | ||||||||||||
Сообщение было отмечено Garrysf как решение
Решение
Garrysf,
1
|
||||||||||||
|
1 / 1 / 0
Регистрация: 25.08.2021
Сообщений: 92
|
|
| 31.08.2021, 09:34 [ТС] | |
|
Croessmah, Алексей1153, если объявлять внутри тела, то оно будет сто раз объявляться/переинициализороваться. А если вынести за цикл и в скобки, то появится автоматическая переменная, которая один раз объявится, один определится и умрет после скобок после цикла
Вместо дополнительных скобок можно new и убить ее после цикла с помощью delete Хотя точно, в for можно через запятую несколько переменных указать. Яб в жизни не вспомнил эту мелочь
0
|
|
|
252 / 185 / 47
Регистрация: 31.01.2021
Сообщений: 934
|
|||
| 31.08.2021, 09:52 | |||
Существует такая штука как оптимизация компилятором.
1
|
|||
|
фрилансер
6444 / 5637 / 1128
Регистрация: 11.10.2019
Сообщений: 14,998
|
||
| 31.08.2021, 09:57 | ||
|
разница появится, если в конструкторе объекта будет что-то тяжёлое. Тогда нужно будет учитывать этот момент. В любом случае, сначала нужно доказать, что тормозит именно это место
1
|
||
|
COM‐пропагандист
|
||
| 02.09.2021, 11:11 | ||
|
Все переменные внутри функции создаются один раз одной инструкцией sub esp, NNN. Компилятор подсчитывает сколько байт занимают все локальные переменные и переменные внутри блоков и просто сдвигает стек на количество байт одной инструкцией процессора. Если вы внутри какого‐то блока объявляете переменную, то она уже заложена в стековый кадр функции, и не создаётся с нуля.
0
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||||||||||
| 02.09.2021, 11:59 | |||||||||||||||
|
2. классовые объекты лучше выносить за пределы цикла. в следующем варианте:
теперь такой вариант:
и будет амортизирован за несколько итераций. Добавлено через 3 минуты но калькулятор жрет так, словно это GTA5. случайно не ты этот калькулятор делал?
0
|
|||||||||||||||
|
248 / 70 / 9
Регистрация: 22.07.2018
Сообщений: 321
|
|
| 02.09.2021, 12:04 | |
|
0
|
|
|
фрилансер
6444 / 5637 / 1128
Регистрация: 11.10.2019
Сообщений: 14,998
|
|
| 02.09.2021, 12:04 | |
|
hoggy, нет
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|
| 02.09.2021, 12:07 | |
|
0
|
|
|
248 / 70 / 9
Регистрация: 22.07.2018
Сообщений: 321
|
|
| 02.09.2021, 12:10 | |
|
hoggy, как
randValue выглядит? Ссылку на статический объект возвращает?
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 02.09.2021, 12:12 | ||
|
что бы понимать, что второй вариант эффективнее, чем первый.
0
|
||
|
252 / 185 / 47
Регистрация: 31.01.2021
Сообщений: 934
|
|
| 02.09.2021, 12:35 | |
|
argcargv,
Там конструктор будет вызывать..В первом варианте. Каждый раз. Если переменая имеет значение в контексте текущей итерации.
0
|
|
| 02.09.2021, 12:35 | |
|
Помогаю со студенческими работами здесь
18
Область видимости переменной Область видимости переменной в классе Область видимости переменной пользовательского класса Область видимости переменной. 3 цикла. Выводим содержимое массива Область видимости Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|