Чтение онлайн

на главную - закладки

Жанры

Delphi. Учимся на примерах

Парижский Сергей Михайлович

Шрифт:

 {Локальные объявления констант, типов и переменных}

begin

 //Тело функции

 Result:= возвращаемое_ значение;

end;

Параметры

Список параметров, передаваемых в процедуру или в функцию, имеет следующий синтаксис:

параметр1: тип; …; параметрN: тип

Если процедура или функция не принимает никаких параметров,

то ее заголовок выглядит следующим образом:

procedure имя_процедуры;

function имя_процедуры: тип_возвращаемого_значения;

Те параметры, перед которыми при объявлении указано ключевое слово var, называются параметрами, передаваемыми по ссылке. Это означает, что к значению этого параметра сохраняется доступ и после выхода из функции или процедуры. Такие параметры можно использовать для возврата результата в процедурах или возврата более одного результата в функциях.

Для параметра, указанного в списке последним, можно определить значение по умолчанию. Это означает, что при вызове процедуры или функции эти параметры можно не передавать.

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

Вызов процедур и функций

Процедуры и функции вызываются по их названию с указанием в круглых скобках списка параметров, например:

s:= IntToStr(i); //вызов функции IntToStr

delete(s, 1, 2); {вызов процедуры delete, которая удаляет из строки s два символа, начиная с первого. В данном случае, переменная s является параметром, передаваемым по ссылке}

Если в процедуру или функцию не передаются никакие параметры (как во многих методах объектов), то вызов осуществляется только по ее имени, например:

Button1.Click; //вызов метода (процедуры) Click

s:= GetCurrentDir; //вызов функции GetCurrentDir

Досрочный выход из процедуры или функции

Для досрочного выхода из процедуры или функции в ее теле следует указать вызов процедуры Exit.

Операторы

Оператор — это конструкция языка Object Pascal, выполняющая определенную операцию. Все операторы можно разбить на несколько категорий.

Оператор присваивания

Слева от оператора присваивания := указывается переменная или свойство объекта, а справа — некоторое значение или выражение. Тип значения или результат выражения должен соответствовать типу переменной или свойства.

Арифметические операторы

Арифметические операторы возвращают значения, соответствующие типам числовых операндов:

• + — сложение;

• – — вычитание;

• * — умножение;

• / — деление чисел с плавающей запятой;

• div — целочисленное деление с отбрасыванием остатка;

• mod — получение остатка от целочисленного деления.

Булевы операторы

Булевы

операторы возвращают значения типа Boolean:

• not — отрицание;

• and — логическое "И";

• or — логическое "ИЛИ";

• xor — логическое исключающее "ИЛИ".

Операторы сравнения

Операторы сравнения возвращают значение типа Boolean:

• = — равно;

• <> — не равно;

• < — меньше;

• > — больше;

• <= — меньше или равно;

• >= — больше или равно.

Побитовые операторы

Побитовые операторы выполняют действия с операндами с учетом их двоичного представления:

• not — побитовое отрицание (not 0 = 1; not 1 = 0);

• and — побитовое умножение (0 and N = 0; 1 and 1 = 1);

• or — побитовое сложение (1 or N = 1; 0 or 0 = 0);

• xor — побитовое исключающее сложение (0 xor 0 = 0; 0 xor 1 = 1; 1 xor 1 = 0);

• shl — побитовый сдвиг влево;

• shr — побитовый сдвиг вправо.

Строковые операторы

Строковые операторы применяются к операндам строкового или символьного типа:

• =, <>, <, >, <=, >= — операторы сравнения;

• + — оператор конкатенации (слияния операндов).

Операторы, применяемые к множествам

К множествам применяются следующие операторы:

• + — объединение (результат — множество);

• – — вычитание (результат — множество);

• * — пересечение (результат — множество);

• <= – подмножество (результат — множество);

• >= — супермножество (результат — множество);

• = — равенство (результат — значение типа Boolean);

• <> — неравенство (результат — значение типа Boolean);

• in — вхождение множества, указанного слева от оператора, во множество, указанное справа (результат — значение типа Boolean).

Операторы, применяемые с объектами

С объектами применяют следующие операторы:

• as — приведение к производному классу. Пример использования:

var Obj: TObject; //объект класса TObject

with Obj as TButton do //приводим к классу TButton

 Caption:= 'Кнопка'; //то же, что Obj.Caption

• is — сравнение с классом. Пример использования:

var Obj: TObject; //объект класса TObject

if Obj is TButton then //если Obj – объект класса

 //TButton, то…

 Obj.Caption:= 'Кнопка';

• =, <> — операторы сравнения.

Группировка операторов

Операторы можно группировать, заключая их в круглые скобки.

Порядок выполнения операторов

В сложных выражениях операторы выполняются в следующем порядке:

1. .

2. not.

3. *, /, div, mod, and, shl, shr, as.

4. +, –, or, xor.

5. =, <>, <, >, <=, >=, in, is.

Поделиться:
Популярные книги

Печать Пожирателя

Соломенный Илья
1. Пожиратель
Фантастика:
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Печать Пожирателя

Привет из Загса. Милый, ты не потерял кольцо?

Лисавчук Елена
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Привет из Загса. Милый, ты не потерял кольцо?

Мастер 2

Чащин Валерий
2. Мастер
Фантастика:
фэнтези
городское фэнтези
попаданцы
технофэнтези
4.50
рейтинг книги
Мастер 2

Нечто чудесное

Макнот Джудит
2. Романтическая серия
Любовные романы:
исторические любовные романы
9.43
рейтинг книги
Нечто чудесное

Клан

Русич Антон
2. Долгий путь домой
Фантастика:
боевая фантастика
космическая фантастика
5.60
рейтинг книги
Клан

Имя нам Легион. Том 3

Дорничев Дмитрий
3. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 3

Запасная дочь

Зика Натаэль
Фантастика:
фэнтези
6.40
рейтинг книги
Запасная дочь

Убивать чтобы жить 7

Бор Жорж
7. УЧЖ
Фантастика:
героическая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 7

У врага за пазухой

Коваленко Марья Сергеевна
5. Оголенные чувства
Любовные романы:
остросюжетные любовные романы
эро литература
5.00
рейтинг книги
У врага за пазухой

Кодекс Охотника. Книга XXI

Винокуров Юрий
21. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XXI

Генерал Скала и ученица

Суббота Светлана
2. Генерал Скала и Лидия
Любовные романы:
любовно-фантастические романы
6.30
рейтинг книги
Генерал Скала и ученица

Оцифрованный. Том 1

Дорничев Дмитрий
1. Линкор Михаил
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Оцифрованный. Том 1

Его маленькая большая женщина

Резник Юлия
Любовные романы:
современные любовные романы
эро литература
8.78
рейтинг книги
Его маленькая большая женщина

Хуррит

Рави Ивар
Фантастика:
героическая фантастика
попаданцы
альтернативная история
5.00
рейтинг книги
Хуррит