![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 681
|
![]()
Дано два варианта кода
Код:
Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,815
|
![]()
Потому что CreateButtonZip делает что-то больше, чем вызовы CreateButton и SetBounds.
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 681
|
![]()
Функция CreateButtonZip присутствует в программе не зависимо от этой процедуры
И вызывается в том числе и из других мест программы |
![]() |
![]() |
![]() |
#4 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,778
|
![]()
С чего вы взяли, что он занимает больше места? Где смотрели? Откройте в отладчике и сравните код.
E-Mail: arigato.freelance@gmail.com
|
![]() |
![]() |
![]() |
#5 |
фрилансер
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,032
|
![]()
Kronos913, скорее всего, код функции не добавляется в модуль, если функция не вызывается
|
![]() |
![]() |
![]() |
#6 | |
Разъяснятор
Форумчанин
Регистрация: 21.04.2022
Сообщений: 142
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,815
|
![]() |
![]() |
![]() |
![]() |
#8 |
Разъяснятор
Форумчанин
Регистрация: 21.04.2022
Сообщений: 142
|
![]()
Хех. Вспомнил как оптимизировал вставкой asm какую-то простую операцию в Delphi 7. Резюме: выбросил несколько инструкций по сравнению с кодом компилятора и в критичном месте (цикл) код показал более высокую скорость.
Сюда же воспоминание о рассказе препода по информатике. Писали свою ОС. Была какая-то огромная таблица данных, массив. Препод немного подумал и заменил таблицу несложной функцией. Так его чуть не на руках потом носили как "крутого оптимизатора" |
![]() |
![]() |
![]() |
#9 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,815
|
![]() Цитата:
Очень показательный пример уровня и оптимизатора, и носильщиков. Нам еще на уроках информатики рассказывали, что бывает оптимизация по размеру и скорости. Синус тоже можно и таблицой считать, и функцией... |
|
![]() |
![]() |
![]() |
#10 |
Разъяснятор
Форумчанин
Регистрация: 21.04.2022
Сообщений: 142
|
![]()
да, я не учитывал особенности работы со стеком - есть вероятность, что в результате работы программы могла нарушаться работа с памятью и её освобождением - понимаю - видимых сбоев не было и результат по скорости был на первом месте по значимости
Я забыл добавить - там задача была именно в оптимизации по размеру. А таблица осталась, как артефакт от старых разработок, насколько я понял. |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Каким образом отмечают места в шаблоне, для вставки текста в нужные места ? | Серегй N. | Microsoft Office Word | 13 | 15.06.2020 07:51 |
webbrowser при обновлении страницы занимает больше оперативной памяти | КатяСаша | Общие вопросы Delphi | 10 | 01.11.2016 18:44 |
Определить, сколько места занимает программа в памяти | kolian87 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 7 | 26.01.2015 07:47 |
Процедура не позволяет передать больше одного параметра | Maryver | Microsoft Office Excel | 5 | 15.08.2011 19:11 |
почему не работает процедура? | MyLastHit | Общие вопросы Delphi | 5 | 20.08.2010 22:05 |