![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() |
Nolik |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 6 Пол: Мужской Реальное имя: Илья Репутация: ![]() ![]() ![]() |
С точки зрения скорости исполнения процедуры, как правильнее организовать корректную работу процедуры с большим количеством изменяемых переменных?
1. Сформировать Class, и содержать в нем все необходимые переменные. Передавать в процедуру в качестве параметра Class. Теперь процедура работает с переменными, содержащимися в Class: Код MyProcedure( Class:MyClass ); begin Class.var1 := Class.var2 + Class.var3; End; 2. Определить переменные в начале программы НО НЕ передавать их в MyProcedure в качестве параметров, а позволить процедуре работать с внешними (для нее) переменным: Код var1; var2…….varN MyProcedure(); begin var1:= var2 + var3; End; |
![]() ![]() |
hardcase |
![]()
Сообщение
#2
|
![]() code warrior ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 484 Пол: Мужской Реальное имя: Славен Репутация: ![]() ![]() ![]() |
А разве просто перечислить не получается?
-------------------- ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
|
Nolik |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 6 Пол: Мужской Реальное имя: Илья Репутация: ![]() ![]() ![]() |
А разве просто перечислить не получается? Получается, но требуется передавать до 15 переменных, в зависимости от процедуры. Очень не удобно получается во время отладки/развития.. 1. Мне показалось удобнее сложить все переменные в контейнер и передавать во все процедуры ссылку на этот объект. А уже каждая процедура будет работать с необходимыми для неё переменными контейнера. 2. Вот и возникает вопрос каким контейнером лучше воспользоваться в этом случае, с точки зрения скорости обращения к переменным, ну и корректности Pascal в целом… Заранее реверанс, Илья. |
![]() ![]() |
![]() |
Текстовая версия | 22.07.2025 11:50 |