русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Процедуры с параметрами


Дата добавления: 2015-06-12; просмотров: 456; Нарушение авторских прав


Процедуры с параметрами - мощный инструмент программирования и применяется программистами очень широко.

Вообразите, что вы решили фотографии разного с вашей точки зрения качества помечать значками разного отступа, размера и цвета, чтобы по значку легко было догадаться о качестве. Вот ваши предпочтения:

Фото неважное Otstup = 100 Razmer = 200 Tsvet = vbBlue
Фото хорошее Otstup = 200 Razmer = 400 Tsvet = RGB(100,250,150)

Но как это сделать? Ведь в процедуре Рисуем_мой_значок каждой из этих переменных присвоено одно единственное значение, поэтому, какую бы фотографию ни взять, значок всегда будет одинаковый. Можно было бы написать отдельную процедуру для каждого значка, но делать этого не хочется, потому что процедуры эти будут почти одинаковы. А тогда где экономия?

Выход есть. Заметим, что присваивать значения переменным не обязательно внутри процедуры Рисуем_мой_значок. Вот вариант программы, который будет работать:

Dim Otstup As Integer

Dim Razmer As Integer

Dim Tsvet As Long

 

Private Sub Рисуем_мой_значок()

Picture1.Line (Otstup, Otstup)-(Otstup + Razmer, Otstup + Razmer), Tsvet, B

Picture1.Line (Otstup, Otstup)-(Otstup + Razmer, Otstup + Razmer), Tsvet

Picture1.Line (Otstup, Otstup + Razmer)-(Otstup + Razmer, Otstup), Tsvet

End Sub

 

Private Sub Command1_Click()

Picture1.Picture = LoadPicture("c:\temp\Rockies.bmp")

'Фото неважное

Otstup = 100

Razmer = 200

Tsvet = vbBlue

Рисуем_мой_значок

Picture1.Print , "21.07.2001"

End Sub

 

Private Sub Command2_Click()

Picture1.Picture = LoadPicture("c:\temp\Porthole.bmp")

'Фото хорошее

Otstup = 200

Razmer = 400

Tsvet = RGB(100, 250, 150)

Рисуем_мой_значок

Picture1.Print , "28.07.2001"



End Sub

Как видите, в процедуре Рисуем_мой_значок значения переменным не присваиваются, а присваиваются в процедурах, которые ее вызывают, причем присваиваются непосредственно перед вызовом. Убедитесь в пошаговом режиме, что все работает нормально.

 

Нормально-то нормально, да вот опять наша программа начала разбухать - в каждой вызывающей процедуре добавилось по три лишних строчки. За красивую жизнь приходится платить. Но и тут создатели языков программирования идут навстречу программистам. Имеется возможность вместо

Otstup = 100

Razmer = 200

Tsvet = vbBlue

Рисуем_мой_значок

писать



<== предыдущая лекция | следующая лекция ==>
Константы | Рисуем_мой_значок 200, 400, RGB(100, 250, 150)


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.385 сек.