Books:Qt-C++: различия между версиями
Строка 164: | Строка 164: | ||
|- | |- | ||
|10.8 Задачи для самостоятельного решения ||326 | |10.8 Задачи для самостоятельного решения ||326 | ||
|- | |||
!Глава 11. Знакомство с Qt. Подготовка к работе ||329 | |||
|- | |||
|11.1 Знакомство с Qt. Обзор истории ||329 | |||
|- | |||
|11.2 Лицензирование Qt ||332 | |||
|- | |||
|11.3 Справка и ресурсы ||333 | |||
|- | |||
|11.4 Обзор настроек среды Qt Creator ||334 | |||
|- | |||
|11.5 Задачи для самостоятельного решения ||339 | |||
|- | |||
!Глава 12. Структура проекта. Основные типы ||340 | |||
|- | |||
|12.1 Файлы проекта ||340 | |||
|- | |||
|12.2 Компиляция проекта ||342 | |||
|- | |||
|12.3 Консольный проект Qt. Вывод сообщений ||345 | |||
|- | |||
|12.4 Работа с текстовыми строками в Qt ||347 | |||
|- | |||
|12.5 Контейнерные классы в Qt ||348 | |||
|- | |||
|12.6 Работа с файлами ||351 | |||
|- | |||
|12.7 Задачи для самостоятельного решения ||354 | |||
|- | |||
!Глава 13. Создание графического интерфейса средствами Qt ||355 | |||
|- | |||
|13.1 Виджеты (Widgets) ||355 | |||
|- | |||
|13.2 Компоновка (Layouts) ||359 | |||
|- | |||
|13.3 Политики размера (Size Policies) ||363 | |||
|- | |||
|13.4 Сигнально-слотовые соединения ||365 | |||
|- | |||
|13.5 Создание сигналов (signals) и слотов (slots) ||367 | |||
|- | |||
|13.6 Элементы графического интерфейса ||371 | |||
|- | |||
|13.7 Задачи для самостоятельного решения ||373 | |||
|- | |||
!Глава 14. Создание элементов графического интерфейса ||374 | |||
|- | |||
|14.1 Класс QObject ||374 | |||
|- | |||
|14.2 Управление памятью. Иерархии объектов ||379 | |||
|- | |||
|14.3 События (Events). Обработка событий (Event handling) ||382 | |||
|- | |||
|14.4 Фильтры событий (Event filters) ||384 | |||
|- | |||
|14.5 Создание собственного элемента интерфейса ||388 | |||
|- | |||
|14.6 Рисование элементов. Класс QPainter || 391 | |||
|- | |||
|14.7 Задачи для самостоятельного решения || 393 | |||
|} | |} |
Версия от 13:13, 27 мая 2014
Е. Р. Алексеев, Г. Г. Злобин, Д. А. Костюк, О. В. Чеснокова, А. С. Чмыхало
Программирование на языке С++ в среде Qt Creator
Ссылка | статус | |
---|---|---|
Электронная версия | рукопись | |
Печатная версия | ALT Linux, , ISBN 978-5-905167-16-4
Формат: 70x100/16. Тираж: . 472 | |
Рекомендуемый дистрибутив |
Книга является учебником по алгоритмизации и программированию на С++ и пособием по разработке визуальных приложений в среде Qt Creator. Также в книге описаны среда программирования Qt Creator, редактор Geany, кроссплатформенная билиотека построения графиков MathGL. При чтении книги не требуется предварительного знакомства с программированием. Издание предназначено для студентов, аспирантов и преподавателей вузов, а также для всех, кто изучает программирование на С++ и осваивает кроссплатформенный инструментарий Qt для разработки.
Содержание
Оглавление | |
---|---|
Глава 1. Знакомство с языком С++ | 8 |
1.1 Первая программа на C++ | 8 |
1.2 Среда программирования Qt Creator | 11 |
Глава 2. Общие сведения о языке С++ | 17 |
2.1 Алфавит языка | 17 |
2.2 Данные | 18 |
2.3 Константы | 21 |
2.4 Структурированные типы данных | 21 |
2.5 Указатели | 22 |
2.6 Операции и выражения | 23 |
2.7 Стандартные функции | 31 |
2.8 Структура программы | 33 |
2.9 Ввод и вывод данных | 35 |
2.10 Задачи для самостоятельного решения | 40 |
Глава 3. Операторы управления | 44 |
3.1 Основные конструкции алгоритма | 44 |
3.2 Составной оператор | 46 |
3.3 Условные операторы | 46 |
3.4 Операторы цикла | 64 |
3.5 Решение задач с использованием циклов | 70 |
3.6 Задачи для самостоятельного решения | 86 |
Глава 4. Использование функций при программировании на C++ | 100 |
4.1 Общие сведения о функциях | 100 |
4.2 Передача параметров в функцию | 104 |
4.3 Возврат результата с помощью оператора return | 106 |
4.4 Решение задач с использованием функций | 106 |
4.5 Рекурсивные функции | 121 |
4.6 Перегрузка функций | 123 |
4.7 Шаблоны функций | 125 |
4.8 Область видимости переменных в функциях | 126 |
4.9 Функция main(). Параметры командной строки | 127 |
4.10 Задачи для самостоятельного решения | 129 |
Глава 5. Массивы | 134 |
5.1 Статические массивы в С(С++) | 134 |
5.2 Динамические массивы в С(С++) | 136 |
5.3 Отличие статического и динамического массива | 139 |
5.4 Основные алгоритмы обработки массивов | 139 |
5.5 Указатели на функции | 166 |
5.6 Совместное использование динамических массивов | 169 |
5.7 Задачи для самостоятельного решения | 175 |
Глава 6. Статические и динамические матрицы | 185 |
6.1 Статические матрицы С(С++) | 185 |
6.2 Динамические матрицы | 186 |
6.3 Обработка матриц в С(С++) | 187 |
6.4 Решение некоторых задач линейной алгебры | 197 |
6.5 Задачи для самостоятельного решения | 215 |
Глава 7. Организация ввода-вывода в C++ | 226 |
7.1 Форматированный ввод-вывод в C++ | 226 |
7.2 Работа с текстовыми файлами в C++ | 230 |
7.3 Обработка двоичных файлов | 236 |
7.4 Функции fscanf() и fprintf() | 240 |
Глава 8. Строки в языке C++ | 242 |
8.1 Общие сведения о строках в C++ | 242 |
8.2 Операции над строками | 243 |
8.3 Тип данных string | 245 |
8.4 Задачи для самостоятельного решения | 247 |
Глава 9. Структуры в языке C++ | 249 |
9.1 Общие сведения о структурах | 249 |
9.2 Библиотеки для работы с комплексными числами | 256 |
9.3 Задачи для самостоятельного решения | 264 |
Глава 10. Объектно-ориентированное программирование | 267 |
10.1 Возникновение объектного подхода в программировании | 267 |
10.2 Классы и объекты в C++ | 271 |
10.3 Создание и удаление объектов | 285 |
10.4 Наследование | 293 |
10.5 Обработка исключений | 305 |
10.6 Шаблоны классов | 316 |
10.7 Элементы стандартной библиотеки C++ | 321 |
10.8 Задачи для самостоятельного решения | 326 |
Глава 11. Знакомство с Qt. Подготовка к работе | 329 |
11.1 Знакомство с Qt. Обзор истории | 329 |
11.2 Лицензирование Qt | 332 |
11.3 Справка и ресурсы | 333 |
11.4 Обзор настроек среды Qt Creator | 334 |
11.5 Задачи для самостоятельного решения | 339 |
Глава 12. Структура проекта. Основные типы | 340 |
12.1 Файлы проекта | 340 |
12.2 Компиляция проекта | 342 |
12.3 Консольный проект Qt. Вывод сообщений | 345 |
12.4 Работа с текстовыми строками в Qt | 347 |
12.5 Контейнерные классы в Qt | 348 |
12.6 Работа с файлами | 351 |
12.7 Задачи для самостоятельного решения | 354 |
Глава 13. Создание графического интерфейса средствами Qt | 355 |
13.1 Виджеты (Widgets) | 355 |
13.2 Компоновка (Layouts) | 359 |
13.3 Политики размера (Size Policies) | 363 |
13.4 Сигнально-слотовые соединения | 365 |
13.5 Создание сигналов (signals) и слотов (slots) | 367 |
13.6 Элементы графического интерфейса | 371 |
13.7 Задачи для самостоятельного решения | 373 |
Глава 14. Создание элементов графического интерфейса | 374 |
14.1 Класс QObject | 374 |
14.2 Управление памятью. Иерархии объектов | 379 |
14.3 События (Events). Обработка событий (Event handling) | 382 |
14.4 Фильтры событий (Event filters) | 384 |
14.5 Создание собственного элемента интерфейса | 388 |
14.6 Рисование элементов. Класс QPainter | 391 |
14.7 Задачи для самостоятельного решения | 393 |
Предисловие
Книга, которую открыл читатель, является с одной стороны учебником по алгоритмизации и программированию на C++, а с другой — пособием по разработке визуальных приложений в среде Qt Creator. В книге описаны среда программирования Qt Creator и редактор Geany. При чтении книги не требуется предварительного знакомства с программированием.
В первой части книги (главы 1–9) на большом количестве примеров представлены методы построения программ на языке C++, особое внимание уделено построению циклических программ, программированию с использованием функций, массивов, матриц и указателей. Вторая часть книги (глава 10) посвящена объектно-ориентированному программированию на C++. В третьей части книги (главы 11–15) читатель научится создавать кроссплатформенные визуальные приложения с помощью Qt Creator и познакомится с библиотекой классов Qt.
В книге присутствуют задания для самостоятельного решения.
В приложениях описан текстовый редактор Geany, а также кроссплатформенная библиотека MathGL предназначенная для построения различных двух- и трёхмерных графиков.
Главы 1–9 написаны Е. Р. Алексеевым и О. В. Чесноковой. Автором раздела по объектно-ориентированному программированию является Д. А. Костюк. Главы 11–15, посвящённые программированию с использованием инструментария Qt, написаны Г. Г. Злобиным и А. C. Чмыхало.