Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Екатеринбург






Уральский государственный экономический университет

В.В. Плещёв

 

Высокоуровневые методы

Информатики и программирования.

Delphi, C++ Builder, Visual C++

с примерами и упражнениями

       
   
 
 
· Структурное и объектно-ориентированное программирование · Команды, функции, DLL‑ библиотеки · Модули, классы · Объекты, свойства, методы и события · Графика, диаграммы, изображения · Базы данных, запросы, файлы, формы · Конструкторы отчетов Quick Reports, Rave Reports, Fast Reports · Технологии OLAP, OLE, COM/DCOM, ADO, CORBA, MIDAS · Пакеты, ActiveX‑ элементы · Разработка приложений Internet    


Екатеринбург


УДК 681.3.06 Допущен

ББК 32.973 Министерством образования РФ

П 38 в качестве учебника для студентов вузов, обучающихся по специальности

«Прикладная информатика (по областям)»

Рецензенты:

Уральский институт бизнеса;

математико‑ механический факультет Уральского государственного уни­верситета им. А.M. Горького;

кафедра информатики Курганского государственного универ­си­­те­та

 

Плещёв В.В.

П 38 Высокоуровневые методы информатики и программирования.

Delphi, C++ Builder, Visual C++ с примерами и упражнениями: Учебник. 5‑ е изд., испр. и доп. (допущен Мино­бразованием РФ) ‑ Екатеринбург: Изд-во Урал. гос. экон. ун-та, 2012. – 344 с.

 

 

Учебник содержит компактное описание методов структурного и объектно-ориентированного программирования, основных средств языков програм­ми­ро­­ва­ния Delphi, C, C++ и их интегрированных сред быст­рой разработки приложений Delphi, C++ Builder, Visual C++. Приводятся примеры программ, упраж­нения и контрольные вопросы.

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

Рекомендовано студентам всех форм обучения по специальности «Прикладная информатика в эконо­мике (по областям)», изучающим курсы «Методы структурного и объектно-ориентированного программирования», «Высокоуровневые ме­то­ды информа­ти­ки и програм­мирова­ния», «Информатика и программирование», «Базы дан­ных», «Раз­ра­ботка и стандар­ти­за­ция программных средств и инфор­ма­цион­ных тех­нологий», «Ос­но­вы алгоритмизации и языки программирования», «Визуальное и объектно‑ ориен­ти­ро­ван­ное программирование» и др.

 

УДК 681.3.06 ББК 32.973 ã Плещёв В.В., 2012 ã Уральский государственный экономический университет, 2012

 



Оглавление

Введение.............................................................................................. 13

Предмет и порядок изучения курса................................................................................. 13

Методы структурного программирования..................................................................... 15

Объектно-ориентированное программирование........................................................... 17

Сравнительный анализ объектно-ориентированных языков программирования..... 19

Глава 1. Язык программирования Delphi........................ 21

1.1. Типы данных............................................................................................................... 22

1.1.1. Константы............................................................................................................ 22

1.1.2. Переменные......................................................................................................... 23

1.1.3. Простые типы данных........................................................................................ 24

1.1.3.1. Целые типы.................................................................................................. 24

1.1.3.2. Вещественные типы.................................................................................... 24

1.1.3.3. Логические типы......................................................................................... 24

1.1.3.4. Символьные типы....................................................................................... 25

1.1.3.5. Тип дата ‑ время (TDateTime)..................................................................... 25

1.1.3.6. Перечисляемые типы.................................................................................. 25

1.1.3.7. Интервальные типы.................................................................................... 25

1.1.3.8. Порядковые типы........................................................................................ 26

1.1.4. Структурированные типы данных.................................................................... 26

1.1.4.1. Статические массивы.................................................................................. 26

1.1.4.2. Динамические массивы.............................................................................. 28

1.1.4.3. Записи........................................................................................................... 28

1.1.4.4. Множества.................................................................................................... 30

1.1.5. Типы строк........................................................................................................... 31

1.1.6. Универсальные типы - Variant........................................................................... 31

1.1.7. Массивы типа Variant......................................................................................... 32

1.1.8. Указатели............................................................................................................. 32

1.1.9. Процедурные типы............................................................................................. 33

1.1.10. Процедурные указатели................................................................................... 34

Вопросы для самопроверки и контроля..................................................................... 34

1.2. Операции..................................................................................................................... 34

1.2.1. Арифметические операции................................................................................ 34

1.2.2. Операции присвоения и сравнения.................................................................. 34

1.2.3. Логические операции......................................................................................... 34

1.2.4. Логические поразрядные операции.................................................................. 35

1.2.5. Операции со строками........................................................................................ 35

1.2.6. Операции над множествами.............................................................................. 35

1.2.7. Операции с указателями..................................................................................... 36

1.2.8. Порядок вычисления выражений...................................................................... 36

1.2.9. Преобразование типов........................................................................................ 36

Вопросы для самопроверки и контроля..................................................................... 36

1.3. Структура и этапы разработки проекта................................................................... 37

1.3.1. Структура проекта.............................................................................................. 37

1.3.1.1. Основные типы файлов.............................................................................. 37

1.3.1.2. Файлы ресурсов........................................................................................... 37

1.3.2. Программа............................................................................................................ 38

1.3.2.1. Структура программы................................................................................. 38

1.3.2.2. Структура головной программы проекта................................................. 38

1.3.3. Подпрограммы.................................................................................................... 39

1.3.3.1. Типы подпрограмм...................................................................................... 39

1.3.3.2. Процедуры и функции, определенные пользователем........................... 40

1.3.4. Модули................................................................................................................. 42

1.3.5. Компилятор.......................................................................................................... 43

1.3.5.1. Общее описание компилятора................................................................... 43

1.3.5.2. Основные директивы компилятора......................................................... 44

1.3.5.3. Директивы условной компиляции............................................................ 44

1.3.6. Этапы разработки проекта................................................................................. 45

1.3.6.1. Разработка интерфейса и программного кода.......................................... 45

1.3.6.2. Компиляция................................................................................................. 45

1.3.6.3. Cборка........................................................................................................... 45

1.3.6.4. Выполнение................................................................................................. 45

1.3.6.5. Выполнение консольного приложения и DOS‑ программ...................... 46

1.3.7. Отладка................................................................................................................. 46

1.3.7.1. Максимальный контроль ошибок.............................................................. 46

1.3.7.2. Оптимизация кода программы.................................................................. 47

1.3.7.3. Пошаговое выполнение программы......................................................... 47

1.3.7.4. Протокол событий....................................................................................... 48

1.3.7.5. Просмотр и изменение значений............................................................... 48

1.3.7.6. Просмотр программного кода.................................................................... 50

1.3.7.7. Отладка внешних процессов...................................................................... 50

1.3.7.8. Отладка в машинных кодах....................................................................... 50

1.3.7.9. Инспектор отладки...................................................................................... 51

1.3.8. Редактор кода....................................................................................................... 51

Вопросы для самопроверки и контроля..................................................................... 51

1.4. Операторы................................................................................................................... 51

1.4.1. Общие сведения.................................................................................................. 51

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

1.4.3. Оператор безусловного перехода Goto............................................................. 52

1.4.4. Оператор вызова процедуры или функции..................................................... 52

1.4.5. Пустой оператор (;)........................................................................................... 52

1.4.6. Условный оператор If......................................................................................... 52

1.4.7. Оператор множественного выбора Case.......................................................... 52

1.4.8. Операторы цикла................................................................................................ 53

1.4.8.1. Счетный цикл For........................................................................................ 53

1.4.8.2. Цикл Repeat ‑ Until...................................................................................... 53

1.4.8.3. Цикл While................................................................................................... 54

1.4.9. Оператор присоединения имени ‑ With............................................................ 54

1.4.10. Вставка команд ассемблера.............................................................................. 54

Вопросы для самопроверки и контроля..................................................................... 55

1.5. Объектно‑ ориентированное программирование.................................................... 55

1.5.1. Определение........................................................................................................ 55

1.5.2. Объявление класса и объекта............................................................................. 57

1.5.3. Динамическое создание и удаление объекта................................................... 57

1.5.4. Динамическое конструирование объектов...................................................... 58

1.5.5. Свойства............................................................................................................... 58

1.5.6. Методы................................................................................................................. 59

1.5.7. Конструкторы и деструкторы............................................................................ 60

1.5.8. События................................................................................................................ 60

Вопросы для самопроверки и контроля..................................................................... 61

1.6. Обработка исключительных ситуаций.................................................................... 61

1.6.1. Исключения......................................................................................................... 61

1.6.2. Иерархия классов исключений.......................................................................... 61

1.6.3. Свойства и конструкторы исключений............................................................ 63

1.6.4. Блок зачистки Try ‑ Finally ‑ End........................................................................ 64

1.6.5. Зачистка в разделе модуля Finalization.............................................................. 64

1.6.6. Блок обработки исключений Try ‑ Except ‑ End.............................................. 64

1.6.7. Искусственная генерация исключений............................................................ 65

1.6.8. Исключения EAbort и функция Abort.............................................................. 66

1.6.9. Создание нового типа исключения................................................................... 66

Вопросы для самопроверки и контроля..................................................................... 66

1.7. Основные стандартные функции и процедуры...................................................... 66

1.7.1. Математические функции.................................................................................. 67

1.7.2. Форматирование................................................................................................. 67

1.7.2.1. Строка форматирования............................................................................. 67

1.7.2.2. Функция форматирования Format............................................................. 68

1.7.3. Преобразование дат и времени.......................................................................... 68

1.7.4. Обработка строк с нулевым символом в конце............................................... 69

1.7.5. Обработка строк без нулевого символа в конце.............................................. 70

1.7.6. Диалоговые окна ввода и вывода сообщений................................................. 71

1.7.7. Воспроизведение звуков.................................................................................... 73

1.7.8. Запуск из приложения внешних программ...................................................... 74

1.7.9. Специальные процедуры и функции................................................................ 75

1.7.10. Сообщения Windows......................................................................................... 75

Вопросы для самопроверки и контроля..................................................................... 76

1.8. Файлы.......................................................................................................................... 76

1.8.1. Типы файлов........................................................................................................ 76

1.8.2. Файлы Паскаля.................................................................................................... 76

1.8.2.1. Любые файлы............................................................................................... 76

1.8.2.2. Типизированные файлы............................................................................. 77

1.8.2.3. Текстовые файлы........................................................................................ 78

1.8.2.4. Печать текста............................................................................................... 79

1.8.2.5. Нетипизированные файлы......................................................................... 79

1.8.3. Объектный подход к файлам............................................................................. 79

1.8.4. Файлы Windows.................................................................................................. 80

1.8.5. Обслуживание внешних файлов и каталогов.................................................. 81

Вопросы для самопроверки и контроля..................................................................... 83

1.9. Динамические структуры данных............................................................................ 83

1.9.1. Общие сведения.................................................................................................. 83

1.9.2. Процедуры и функции динамического распределения памяти..................... 84

1.9.3. Формирование стека........................................................................................... 84

1.9.4. Формирование очереди...................................................................................... 85

Вопросы для самопроверки и контроля..................................................................... 85

Глава 2. Среда разработки Delphi.......................................... 86

2.1. Общие сведения.......................................................................................................... 86

2.1.1. Окна...................................................................................................................... 86

2.1.2. Панели компонентов и их настройка............................................................... 88

2.1.3. Архив объектов (репозиторий).......................................................................... 88

2.1.4. Справочная система............................................................................................ 89

2.1.5. Характеристика компонентов........................................................................... 90

2.1.6. Размещение и настройка компонентов на форме............................................ 90

2.1.7. Свойства............................................................................................................... 92

2.1.7.1. Имя объекта.................................................................................................. 92

2.1.7.2. Внешний вид объекта................................................................................. 92

2.1.7.3. Размеры объекта.......................................................................................... 93

2.1.7.4. Местоположение объекта........................................................................... 93

2.1.7.5. Перемещение объекта................................................................................. 93

2.1.7.6. Доступ к объекту......................................................................................... 93

2.1.7.7. Значение объекта......................................................................................... 94

2.1.7.8. Меню............................................................................................................. 94

2.1.7.9. Вид указателя мыши................................................................................... 94

2.1.7.10. Справочная система.................................................................................. 94

2.1.7.11. Наследование родительских свойств...................................................... 95

2.1.8. События................................................................................................................ 95

2.1.8.1. Процедуры обработки событий................................................................. 95

2.1.8.2. Мышь............................................................................................................ 95

2.1.8.3. Клавиатура................................................................................................... 96

2.1.8.4. Перемещение объектов............................................................................... 96

2.1.8.5. Другие события........................................................................................... 97

2.1.9. Методы................................................................................................................. 97

2.2. Глобальные объекты................................................................................................... 98

2.2.1. Формы (Form)...................................................................................................... 98

2.2.1.1. Свойства....................................................................................................... 98

2.2.1.2. Методы......................................................................................................... 99

2.2.1.3. События...................................................................................................... 100

2.2.1.4. Некоторые приемы работы с формами................................................... 101

2.2.2. Приложение (Application)................................................................................. 102

2.2.2.1. Свойства..................................................................................................... 102

2.2.2.2. Методы....................................................................................................... 102

2.2.2.3. События...................................................................................................... 103

2.2.3. Экран (Screen).................................................................................................... 103

2.2.3.1. Свойства..................................................................................................... 103

2.2.3.2. Методы....................................................................................................... 104

2.2.3.3. События...................................................................................................... 104

2.2.4. Принтер (Printer)................................................................................................ 104

2.2.4.1. Свойства..................................................................................................... 104

2.2.4.2. Методы....................................................................................................... 104

2.2.5. Буфер обмена Windows (Clipboard)................................................................ 105

2.2.5.1. Свойства..................................................................................................... 105

2.2.5.2. Методы....................................................................................................... 105

2.2.6. Списки (TList).................................................................................................... 105

2.2.6.1. Свойства..................................................................................................... 105

2.2.6.2. Методы....................................................................................................... 105

2.2.6.3. Схема создания списка............................................................................. 106

2.2.7.Список строк и объектов (TStringList)............................................................. 106

2.2.7.1. Свойства..................................................................................................... 106

2.2.7.2. События...................................................................................................... 107

2.2.7.3. Методы....................................................................................................... 107

2.2.8. Графика.............................................................................................................. 107

2.2.8.1. Шрифт (TFont)................................................................................................ 107

2.2.8.2. Перо (TPen)..................................................................................................... 108

2.2.8.3. Кисть (TBrush)................................................................................................ 108

2.2.8.4. Канва, ее свойства и графические методы (TCanvas)................................ 108

2.2.8.5. Изображение (TGraphic, TPicture)................................................................. 110

2.2.8.6. Анимация........................................................................................................ 111

2.3. Основные компоненты............................................................................................ 111

2.3.1. Вывод текста...................................................................................................... 111

2.3.1.1. Текстовая надпись (Label)......................................................................... 111

2.3.1.2. Статическая текстовая надпись (StaticText)........................................... 112

2.3.1.3. Строка состояния (StatusBar)................................................................... 112

2.3.2. Ввод и редактирование данных...................................................................... 112

2.3.2.1. Одностроковый текст (Edit)..................................................................... 113

2.3.2.2. Одностроковый текст с маской (MaskEdit)............................................ 113

2.3.2.3. Многостроковый текст (Memo)............................................................... 114

2.3.2.4. Таблица строк (StringGrid)........................................................................ 114

2.3.2.5. Рисуемая таблица (DrawGrid).................................................................. 115

2.3.2.6. Многострочный редактор текста в формате RTF (RichEdit)................ 116

2.3.2.7. Дата и время (DateTimePicker).................................................................. 117

2.3.3. Списки................................................................................................................ 117

2.3.3.1. Простой список (ListBox)......................................................................... 118

2.3.3.2. Комбинированный список (ComboBox)................................................. 118

2.3.4. Командные кнопки........................................................................................... 119

2.3.4.1. Стандартная кнопка (Button)................................................................... 119

2.3.4.2. Кнопка с рисунком (BitBtn)..................................................................... 119

2.3.4.3. Кнопка быстрого доступа (SpeedButton)................................................ 120

2.3.4.4. Независимый переключатель (CheckBox).............................................. 120

2.3.4.5. Зависимый переключатель (RadioButton).............................................. 121

2.3.4.6. Кнопка‑ счетчик (SpinButton)................................................................... 121

2.3.5. Контейнеры....................................................................................................... 121

2.3.5.1. Группа (GroupBox).................................................................................... 121

2.3.5.2. Группа радиокнопок (RadioGroup).......................................................... 121

2.3.5.3. Группа независимых переключателей (CheckListBox)......................... 122

2.3.5.4. Панель (Panel)............................................................................................ 122

2.3.5.5. Область прокрутки (ScrollBox)................................................................ 122

2.3.5.6. Фрейм (Frame)............................................................................................ 122

2.3.5.7. Разделители контейнеров (Splitter).......................................................... 123

2.3.5.8. Прокрутка страниц (PageScroller)............................................................ 123

2.3.6. Счетчики............................................................................................................ 123

2.3.6.1. Полоса прокрутки ‑ счетчик (ScrollBar).................................................. 124

2.3.6.2. Ползунок (TrackBar).................................................................................. 124

2.3.6.3. Счетчик (UpDown).................................................................................... 124

2.3.6.4. Редактируемое поле со счетчиком (SpinEdit)......................................... 125

2.3.6.5. Индикаторы процесса выполнения программы (ProgressBar, Gauge). 125

2.3.7. Графика.............................................................................................................. 125

2.3.7.1. Изображение (Image)................................................................................. 125

2.3.7.2. Список изображений (ImageList)............................................................. 126

2.3.7.3. Геометрическая фигура (Shape)............................................................... 126

2.3.7.4. Фаска (Bevel).............................................................................................. 126

2.3.7.5. Окно рисования (PaintBox)...................................................................... 126

2.3.7.6. Простая диаграмма (Gauge)...................................................................... 127

2.3.7.7. Диаграмма (Chart)...................................................................................... 127

2.3.8. Меню.................................................................................................................. 129

2.3.8.1. Главное меню (MainMenu)........................................................................ 130

2.3.8.2. Контекстное меню (PopupMenu).............................................................. 130

2.3.8.3. Программная настройка меню................................................................. 130

2.3.8.4. Горячие клавиши (HotKey)...................................................................... 130

2.3.8.5. Синхронизация объектов (ActionList)..................................................... 131

2.3.8.6. События приложения (ApplicationEvents).............................................. 131

2.3.9. Структурированные компоненты................................................................... 131

2.3.9.1. Панели инструментов (ToolBar).............................................................. 131

2.3.9.2. Панель управления (ControlBar).............................................................. 132

2.3.9.3. Расширенная панель управления (CoolBar)............................................ 132

2.3.9.4. Набор страниц (PageControl).................................................................... 133

2.3.9.5. Переключаемые страницы (TabControl).................................................. 133

2.3.9.6. Список элементов (ListView)................................................................... 134

2.3.9.7. Дерево элементов (TreeView)................................................................... 135

2.3.10. Системные компоненты................................................................................. 136

2.3.10.1. Таймер (Timer).......................................................................................... 136

2.3.10.2. Мультимедийный проигрыватель (MediaPlayer)................................. 136

2.3.10.3. Анимация AVI (Animation).................................................................... 136

2.3.11. Стандартные диалоги..................................................................................... 137

2.3.11.1. Открытие и сохранение файла (OpenDialog, SaveDialog)................... 137

2.3.11.2. Открытие и сохранение графического файла (OpenPictureDialog, SavePictureDialog) 138

2.3.11.3. Выбор шрифта (FontDialog).................................................................... 138

2.3.11.4. Выбор цвета (ColorDialog)...................................................................... 139

2.3.11.5. Настройка печати (PrintDialog).............................................................. 139

2.3.11.6. Настройка принтера (PrinterSetupDialog).............................................. 139

2.3.11.7. Поиск (FindDialog).................................................................................. 139

2.3.11.8. Поиск и замена (ReplaceDialog)............................................................. 139

2.3.11.9. Выбор диска (DriveComboBox).............................................................. 140

2.3.11.10. Выбор каталога (DirectoryListBox)...................................................... 140

Вопросы для самопроверки и контроля........................................................................ 140

Глава 3. Работа с базами данных....................................... 141

3.1. Основные понятия.................................................................................................... 141

3.2. Создание базы данных............................................................................................. 143

3.3. Создание модуля данных......................................................................................... 147

3.4. Компоненты доступа к данным (Data Access)....................................................... 148

3.4.1. Таблица (Table).................................................................................................. 148

3.4.2. Источник данных (DataSource)........................................................................ 149

3.4.3. Описание и доступ к полям записи базы данных......................................... 150

3.4.4. Компоненты работы с базой (Data Control).................................................... 151

3.5. Установка связей между таблицами...................................................................... 153

3.6. Установка полей соответствия (Lookup)................................................................ 154

3.7. Создание запросов.................................................................................................... 154

3.7.1. Визуальные средства........................................................................................ 155

3.7.2. Командные средства SQL................................................................................ 156

3.8. Основные операции с записями............................................................................. 159

3.9. Мастер форм.............................................................................................................. 163

3.10. Формирование отчетов средствами Quick Reports............................................. 163

3.10.1. Быстрый отчет (QuickRep)............................................................................. 163

3.10.2. Компоненты отчета......................................................................................... 165

3.10.3. Простой отчет.................................................................................................. 167

3.10.4. Отчет из нескольких таблиц с группировкой данных и итогами............. 168

3.10.5. Отчет типа «мастер/детальный».................................................................... 171

3.10.6. Составной отчет.............................................................................................. 173

3.11. Формирование отчетов средствами Rave Reports............................................... 173

3.11.1. Компоненты отчета......................................................................................... 173

3.11.2. Конструктор отчетов...................................................................................... 175

3.11.3. Компоненты панели инструментов.............................................................. 177

3.11.4. Отчет из нескольких таблиц с группировкой данных и итогами............. 179

3.12. Формирование отчетов средствами Fast Reports................................................ 183

3.12.1. Компоненты отчета......................................................................................... 183

3.12.2. Конструктор отчетов...................................................................................... 188

3.12.3. Компоненты панели инструментов.............................................................. 189

3.12.4. Отчет из нескольких таблиц с группировкой данных и итогами............ 189

3.13. Анализ данных cредствами многомерного куба Decision Cube........................ 194

3.14. Клиент‑ серверные СУБД....................................................................................... 196

3.15. Доступ к данным по технологии ADO................................................................ 199

Вопросы для самопроверки и контроля........................................................................ 202

Глава 4. Взаимодействие приложений.......................... 203

4.1. Создание динамически подключаемых библиотек (DLL)................................... 203

4.2. Создание новых компонентов................................................................................ 204

4.3. Создание и установка ActiveX‑ элементов............................................................. 206

4.4. Создание и установка пакетов................................................................................ 207

4.5. Использование пакетов............................................................................................ 207

4.6. Технология связывания и внедрения объектов (OLE)......................................... 208

4.7. Многопоточные приложения................................................................................. 208

4.8. Технология применения объектов COM, DCOM................................................. 211

4.9. Распределенные двухуровневые клиент‑ серверные приложения...................... 213

4.9.1. Технология COM/DCOM с использованием сервера транзакций MTS...... 213

4.9.2. Технология CORBA.......................................................................................... 213

4.10. Распределенные многоуровневые приложения.................................................. 213

4.10.1. Технология MIDAS......................................................................................... 213

4.10.2. Создание сервера приложений доступа к базе данных............................. 214

4.10.3. Связь с сервером приложений по протоколу DCOM................................. 214

4.10.4. Связь с сервером приложений по протоколу Интернет TCP/IP................ 215

4.10.5. Связь с сервером приложений по протоколу HTTP.................................... 216

4.10.6. Основы разработки приложений Internet..................................................... 217

Глава 5. Дополнительные возможности...................... 225

5.1. Создание справочной системы............................................................................... 225

5.2. Обзор остальных возможностей............................................................................. 227

5.3. Формирование отчетов, диаграмм и анализа данных пакетом Crystal Reports. 227

5.4. Работа с Excel............................................................................................................ 228

5.5. Работа с Word............................................................................................................ 229

5.6. Основные отличия новых версий Delphi............................................................... 232

Глава 6. C++ Builder...................................................................... 236

6.1. Лексические структуры языка................................................................................. 237

6.1.1. Элементы........................................................................................................... 237

6.1.2. Константы.......................................................................................................... 238

6.1.3. Типы данных..................................................................................................... 239

6.1.4. Массивы............................................................................................................ 241

6.1.5. Структуры (записи)........................................................................................... 242

6.1.6. Объединения union............................................................................................ 242

6.1.7. Перечисления enum........................................................................................... 243

6.2. Основные возможности.......................................................................................... 243

6.2.1. Предпроцессор.................................................................................................. 243

6.2.2. Директива #Include........................................................................................... 243

6.2.3. Директива #define............................................................................................. 243

6.2.4. Функция вывод на терминал - Printf............................................................... 244

6.2.5. Функция ввод с клавиатуры - Scanf................................................................ 244

6.2.6. Функция Main в консольных приложениях................................................... 245

6.2.7. Функции............................................................................................................. 245

6.2.8. Классы памяти................................................................................................... 246

6.2.8.1. Автоматические переменные................................................................... 246

6.2.8.2. Регистровые переменные......................................................................... 247

6.2.8.3. Статические переменные и функции...................................................... 247

6.2.8.4. Внешние переменные............................................................................... 247

6.2.9. Операции........................................................................................................... 247

6.2.9.1. Арифметические операции...................................................................... 247

6.2.9.2. Операции отношения................................................................................ 247

6.2.9.3. Логические операции............................................................................... 248

6.2.9.4. Операции присваивания.......................................................................... 248

6.2.10. Операторы........................................................................................................ 249

6.2.10.1. Блоки и составные операторы............................................................... 249

6.2.10.2. Оператор возврата из функции ‑ return................................................. 249

6.2.10.3. Условный оператор ‑ if........................................................................... 249

6.2.10.4. Условная операция ‑?............................................................................. 249

6.2.10.5. Оператор выбора варианта ‑ switch....................................................... 249

6.2.10.6. Оператор безусловного перехода ‑ goto................................................ 250

6.2.10.7. Цикл с предусловием ‑ while................................................................. 250

6.2.10.8. Цикл с постусловием ‑ do while............................................................. 251

6.2.10.9. Итерационный цикл ‑ For....................................................................... 251

6.2.10.10. Пустой оператор.................................................................................... 253

6.3. Указатели................................................................................................................... 253

6.4. Функции, методы и макросы.................................................................................. 254

6.4.1. Математика........................................................................................................ 254

6.4.2. Обработка статистических данных................................................................. 256

6.4.3. Взаимное преобразование чисел и строк типа char....................................... 256

6.4.4. Взаимное преобразование чисел и строк типа AnsiString............................ 257

6.4.5. Преобразования дат и времени........................................................................ 258

6.4.6. Методы обработки строк типа AnsiString....................................................... 259

6.4.7. Функции обработки строк типа AnsiString.................................................... 260

6.4.8. Макросы обработки символов......................................................................... 261

6.4.9. Обработка строк с нулевым символом в конце............................................. 261

6.4.10. Управление каталогами и файлами на дисках............................................. 263

6.4.11. Диалоговые окна ввода и вывода сообщений............................................. 265

6.4.12. Воспроизведение звуков................................................................................ 266

6.4.13. Управление текущим процессом................................................................... 266

6.4.14. Запуск из приложения внешних программ.................................................. 266

6.5. Работа с файлами...................................................................................................... 267

6.5.1. Файлы в С.......................................................................................................... 267

6.5.2. Файлы в С++...................................................................................................... 270

6.5.3. Файлы в С++Builder.......................................................................................... 272

6.6. Объектно‑ ориентированное программирование.................................................. 273

6.6.1. Создание классов и объектов........................................................................... 273

6.6.2. Виртуальные методы........................................................................................ 275

6.6.3. Дружественные функции................................................................................. 276

6.6.4. Шаблоны............................................................................................................ 276

6.6.5. Пространство имен........................................................................................... 276

6.6.6. Явные объявления конструкторов.................................................................. 277

6.6.7. Непостоянные объявления............................................................................... 277

6.6.8. Быстрый вызов функций -_fastcall.................................................................. 277

6.6.9. Блок обработки исключений try ‑ catch -_finally........................................... 277

Вопросы для самопроверки и контроля........................................................................ 278

Глава 7. Visual C++......................................................................... 280

7.1. Создание консольного приложения....................................................................... 280

7.2. Основные элементы управления............................................................................ 281

7.3. Списки....................................................................................................................... 284

7.4. Линейные регуляторы и индикаторы.................................................................... 285

Вопросы для самопроверки и контроля........................................................................ 285

Глава 8. Лабораторный практикум................................... 286

8.1. Примеры программирования задач........................................................................ 286

8.1.1. Игра «Угадай число» (Delphi).......................................................................... 286

8.1.2. Секундомер (Delphi).......................................................................................... 287

8.1.3. Бегущая строка (Delphi).................................................................................... 288

8.1.4. Рисование на экране (Delphi)........................................................................... 289

8.1.5. Тестирование по арифметике (Delphi)............................................................ 291

8.1.6. Игра «Морской бой» (Delphi).......................................................................... 294

8.1.7. Вывод диаграммы (Delphi)............................................................................... 295

8.1.8. Работа компонентов панелей Standard, Additional и Win32 (Delphi).......... 296

8.1.9. Игра «Поле чудес» (Delphi, C++ Builder)........................................................ 301

8.1.10. Перевозка ценных предметов (Visual C++).................................................. 311

8.2. Задачи для программирования................................................................................ 313

8.2.1. Числовые типы, оператор присваивания....................................................... 313

8.2.2. Алгоритмы линейной структуры.................................................................... 313

8.2.3. Алгоритмы разветвляющей структуры.......................................................... 313

8.2.3. Алгоритмы циклической структуры.............................................................. 314

8.2.5. Алгоритмы работы с рядами............................................................................ 317

8.2.6. Алгоритмы работы с массивами..................................................................... 318

8.2.7. Обработка символьных данных...................................................................... 320

8.2.8. Организация подпрограмм.............................................................................. 320

8.2.9. Работа с файлами............................................................................................... 321

8.2.10. Работа с формами и диаграммами................................................................. 322

8.2.11. Контрольные работы...................................................................................... 323

Приложения..................................................................................... 330

П Р И Л О Ж Е Н И Е 1. Ответы на вопросы для самопроверки............................. 330

П Р И Л О Ж Е Н И Е 2. Вопросы для экзаменационных билетов.......................... 332

Тематический указатель....................................................... 334

Библиографический список................................................ 343


Моей дочери Анне

посвящается






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.