Книги: [Классика] [Базы данных] [Internet/WWW] [Сети] [Программирование] [UNIX] [Windows] [Безопасность] [Графика] [Software Engineering] [ERP-системы] [Hardware]
Полное содержание
Введение
ЧАСТЬ 1
Введение в C++
Глава 1. Компилятор Visual Studio .NET 7
- Особенности Visual C++ 7.0
- Вариант для профессионалов
- Корпоративный вариант
- Требования к аппаратному и программному обеспечению
Стандартная установка Visual С++ в системе Windows
- Каталоги
- Документация
Средства разработки
- Инструмент Solution Explorer
- Интегрированный отладчик
- Встроенные редакторы ресурсов
- Инструменты и утилиты
- Средства автоматизации и макросы
- ClassView
- Настраиваемые панели инструментов и меню
- Возможность соединения с Интернет
- Решения и файлы проектов
- Мастера Wizard
- Возможности компилятора
- Предварительно скомпилированные заголовочные файлы и типы
- Библиотека MFC
- Макроподстановка функций
- Опции компилятора
- General
- Debug
- C/C++
- Link
- Resources
- Browse Info
- Резюме
Глава 2. Краткое знакомство с MDE
- Запуск Visual C++
Доступ к контекстной справке
Вызов команд меню
Перемещаемые панели инструментов
Команда Auto Hide
Команды Navigate Backward и Navigate Forward
Меню File
- New
- Open
- Close
- Add New Item, Existing Item, AddProject
- Open, Close Solution
- Save
- Save As
- Save All
- Source Control
- Page Setup
- Print
- Исторические списки
- Exit
- Меню Edit
- Undo
- Redo
- Cut
- Copy
- Paste
- Cycle Clipboard Ring
- Delete
- Select All
- Find and Replace
- Go To
- Insert File As Text
- Advanced
- Bookmarks
- Outlining
- IntelliSense
- Меню View
- Open и Open With
- Solution Explorer
- Class View
- Server Explorer
- Resource View
- Properties Window
- Toolbox
- Pending Checkins
- Web-browser
- Other Windows
- Show Tasks
- Toolbars
- Full Screen
- Navigate Backward и Navigate Forward
- Property Pages
- Меню Project
- Add Class, Resource, New-Existing Item
- Add Web Reference
- Set As StartUp Project
- Меню Build
- Build Solution
- Rebuild Solution
- Clean
- Build, Rebuild, Clean
- Batch Build
- Configuration Manager
- Compile
- Меню Debug
- Windows
- Start
- Start Without Debugging
- Processes
- Exceptions
- Step Into и Step Over
- New Breakpoint
- Clear All Breakpoints
- Меню Tools
- Debug Processes
- Connect to Database
- Customize Toolbox
- Add-In Manager
- Build Comment Web Pages
- Macros
- External Tools
- Customize
- Options
- Меню Window
- New Window
- Split
- Dockable, Hide, Floating, Auto Hide, Auto Hide All
- Список
- Windows
- Меню Help
- Dynamic Help
- Contents, Index, Search
- Previous, Next Topic и Sync Contents
- Show Start Page
- Check for Updates
- Customer Feedback, Technical Support
- Help on Help
- About Microsoft Visual C++
- Резюме
Глава 3. Написание, компиляция и отладка простейшей программы
- Начало работы с Developer Studio
Создание первой программы
Редактирование исходного кода
Сохранение файла
Создание исполняемого файла
- Построение программы
- Отладка программы
- Различие между сообщениями error и warning
- Первое сообщение об ошибке
- Окна output и sourсe
- Использование команды Find and Replace
- Элементы диалогового окна Replace
- Быстрое обнаружение строк с ошибками
- Полезные предупреждения и сообщения об ошибках
- Продолжение отладки
- Запуск программы
- Работа со встроенным отладчиком
- Дополнительные средства отладки
- Работа с точками останова
- Окно QuickWatch
- Резюме
Глава 4. Дополнительные возможности Visual C++
- Стандартная библиотека шаблонов STL
- Сложности разработки приложений для различных платформ
- Нереализованные возможности С++
- Структуры данных
- Понятие STL
- История создания библиотеки STL
- Необходимая информация о библиотеке STL
- Структура библиотеки STL
- Обзор элементов библиотеки STL
- Новый язык программирования С# от компании Microsoft
- Ваше первое консольное приложение на C#
- Обычные и ссылочные типы
- Предварительно определенные типы данных
- Массивы
- Операции boxing, unboxing и единая система типов
- Операторы
- Классы, структуры и перечисления
- Пространство имен
- Атрибуты, события, индексаторы, свойства и контроль версий
- Резюме
ЧАСТЬ 2
Основы программирования
Глава 5. Введение в язык C++
Из истории языка C
Отличия языка C от ранних языков высокого уровня
Достоинства языка C
Недостатки языка С
Язык C - не для любителей!
Стандарт ANSI C
От С к С++ и объектно-ориентированному программированию
Из истории языка C++
Эффективность объектно-ориентированного подхода
Незаметные различия между языками C и C++
Ключевые различия между C и C++
Основные компоненты программ, созданных на языках C/C++
Пять основных свойств хорошей программы на С/С++
Простейшая программа на языке C
Простейшая программа на языке С++
Переход от main к _tmain и от char* к _TCHAR*
Последние обновления в С++, сделанные комитетом ANSI/ISO
Получение данных от пользователя в языке C
Получение данных от пользователя в языке C++
Файловый ввод-вывод
Резюме
Глава 6. Работа с данными
- Идентификаторы
Ключевые слова
Ключевые слова, определенные компанией Microsoft
Стандартные типы данных
- Символы
- Три типа целых чисел
- Модификаторы signed и unsigned
- Числа с плавающей запятой
- Перечисления
- Новый тип данных языка C++ - bool
- Квалификаторы доступа
- Квалификатор const
- Директива #define
- Квалификатор volatile
- Одновременное применение квалификаторов const и volatile
- Квалификаторы pascal, cdecl, near, far и huge
- Квалификатор pascal
- Квалификатор cdecl
- Квалификаторы near, far и huge
- Преобразование типов данных
- Явное преобразование типов
- Новый оператор приведения типов
- Оператор dynamic_cast
- Оператор static_cast
- Новый оператор reinterpret_cast
- Оператор const_cast
- Классы памяти
- Объявление переменных на внешнем уровне
- Объявление переменных на внутреннем уровне
- Правила определения области видимости переменных
- Объявление функций
- Операторы
- Побитовые операторы
- Операторы сдвига
- Инкрементирование и декрементирование
- Арифметические операторы
- Оператор присваивания
- Комбинированные операторы присваивания
- Операторы сравнения и логические операторы
- Условный оператор
- Оператор "запятая"
- Приоритеты выполнения операторов
Стандартные библиотеки С и С++
Резюме
Глава 7. Инструкции
- Инструкции выбора
- Инструкция условного перехода if
- Инструкция if/else
- Условный оператор ?:
- Конструкция switch/case
- Совместное использование конструкций if/else/if и switch/case
- Циклы
- Цикл for
- Цикл while
- Цикл do/while
- Инструкция break
- Инструкция continue
- Совместное использование инструкций break и continue
- Функция exit()
- Функция atexit( )
- Резюме
Глава 8. Функции
- Прототипы функций
- Синтаксис объявления функции
- Способы передачи аргументов
- Список аргументов по умолчанию
- Классы памяти
- Область видимости переменных
- Рекурсия
- Аргументы функций
- Формальные и фактические аргументы
- Аргументы типа void
- Аргументы типа char
- Аргументы типа int
- Аргументы типа float
- Аргументы типа double
- Массивы как аргументы
- Типы значений, возвращаемых функциями
- Тип результата: void
- Тип результата: char
- Тип результата: bool
- Тип результата: int
- Тип результата: long
- Тип результата: float
- Тип результата: double
- Аргументы командной строки
- Текстовые аргументы
- Целочисленные аргументы
- Аргументы с плавающей запятой
- Дополнительные возможности функций
- Макроподстановка функций
- Перегрузка функций
- Функции с переменным числом аргументов
- Область видимости переменных
- Возможен ли доступ к переменной вне ее области видимости?
- Использование глобальных переменных в функциях
- Преимущество локальных переменных перед глобальными
- Оператор расширения области видимости
- Предотвращение конфликтов локальных и глобальных имен
- Резюме
Глава 9. Массивы
- Что такое массивы
Свойства массивов
Объявления массивов
Инициализация массивов
- Инициализация по умолчанию
- Явная инициализация
- Инициализация безразмерных массивов
- Доступ к элементам массива
Вычисление размера массива в байтах
Выход за пределы массива
Массивы символов
Многомерные массивы
Массивы как аргументы функций
- Передача массивов функциям в языке С++
- Функции работы со строками и массивы символов
- Функции gets( ), puts( ), fgets( ), fputs( ) и sprintf( )
- Функции strcpy( ), strcat( ), strncmp( ) и strlen( )
- Резюме
Глава 10. Указатели
- Указатели как особый тип переменных
- Объявление указателей
- Использование указателей
- Инициализация указателей
- Ограничения на использование оператора &
- Указатели на массивы
- Указатели на указатели
- Указатели на строки
- Арифметические операции над указателями
- Применение указателей при работе с массивами
- Распространенная ошибка при использовании операторов ++ и --
- Применение квалификатора const совместно с указателями
- Другие операции над указателями
- Физическая реализация указателей
- Использование с указателями функции sizeof() в 16-битовой среде DOS
Указатели на функции
Динамическая память
- Указатели типа void
- Подробнее об указателях и массивах
- Строки (массивы типа char)
- Массивы указателей
- Дополнительные сведения об указателях на указатели
- Массивы строковых указателей
- Ссылки в языке С++
- Функции, возвращающие адреса
- Почему необходимо использовать ссылочные типы
- Резюме
Глава 11. Основы ввода-вывода в языке С++
- Подсистема ввода-вывода в С++
- Потоки cin, cout и cerr
- Операторы ввода и вывода данных
Библиотеки stream.h и iostream
Флаги и функции форматирования
- Вывод символов в С++
- Изменение основания системы счисления
- Форматирование строк
- Форматирование числовых значений
- Файловый ввод-вывод
- Определение состояния потока
- Резюме
Глава 12. Структуры, объединения и дополнительные типы данных
- Структуры
- Синтаксис и правила создания структур
- Дополнительные правила создания структур в С++
- Доступ к членам структур
- Создание простейшей структуры
- Передача структур функциям
- Создание массива структур
- Применение указателей на структуры
- Передача массива структур функции
- Применение структур в С++
- Дополнительные возможности при работе со структурами
- Объединения
- Синтаксис и правила создания объединений
- Создание простейшего объединения
- Другие типы данных
- Применение ключевого слова typedef
- Применение ключевого слова enum
- Резюме
Глава 13. Дополнительные средства программирования
- Совместимость типов данных
- Понятия совместимости типов языка С, определенные ANSI
- Идентичный тип данных
- Типы перечисления
- Типы массивов
- Типы функций
- Типы структур и объединений
- Типы указателей
- Совместимость сложных типов данных из разных файлов
- Макросы
- Что такое макрос
- Макросы и их параметры
- Проблемы, возникающие с расширением макросов
- Как создавать и применять пользовательские макросы
- Макросы, поставляемые с компилятором
- Директивы препроцессора
- Директивы #ifdef и #endif
- Директива #undef
- Директива #ifndef
- Директива #if
- Директива #else
- Директива #elif
- Директива #line
- Директива #error
- Директива #pragma
- Условная компиляция
Операторы препроцессора
- Оператор преобразования в формат строки
- Оператор конкатенации
- Оператор преобразования в символы
- Правильное применение заголовочных файлов
Создание заголовочных файлов
Предварительная компиляция заголовочных файлов
- Создание предварительно скомпилированных заголовочных файлов
- Применение предварительно скомпилированных заголовочных файлов
- Заголовочные файлы сlimits и cfloat
Устранение ошибок при помощи функции perror()
Связные списки и динамическое распределение памяти
- Замечания по использованию связных списков
- Простой связный список
- Резюме
Глава 14. Программирование: основные библиотеки С/С++
- Заголовочные файлы С/С++
Стандартные библиотечные функции
- Преобразование данных
- Поиск и сортировка данных
- Другие операции
- Символьные функции
- Проверка алфавитно-цифровых, алфавитных значений, а также значений ASCII
- Проверка наличия знаков пунктуации, управляющих символов и пробелов
- Преобразование символов в ASCII-код
- Строковые функции
- Использование функций памяти
- Использование строковых функций
- Математические функции
- Построение таблицы значений тригонометрических функций
- Функции обработки времени
- Синтаксис структур даты и времени
- Резюме
ЧАСТЬ 3
Объектно-ориентированное программирование
Глава 15. Основы ООП
Все новое - это хорошо забытое старое
Структурное программирование
Объектно-ориентированное программирование
С++ и ООП
Основная терминология
Инкапсуляция
Иерархия классов
Виртуальные функции
Первое знакомство с классом
Структура в роли примитивного класса
Синтаксис описания классов в С++
Простейший класс
Резюме
Глава 16. Использование классов C++
- Особенности использования классов
Работа с простым классом
- Вложенные классы
- Работа с конструкторами и деструкторами
- Перегрузка функций-членов класса
- Дружественные функции
- Указатель this
- Перегрузка операторов
- Перегрузка операторов и вызов функций
- Синтаксис перегрузки
- Производные классы
- Синтаксис наследования
- Использование наследования
- Резюме
Глава 17. Классы ввода-вывода в языке C++
- Использование перечислений в C++
Переменные ссылочного типа
Аргументы по умолчанию
Функция memset()
Форматный вывод данных
Опции ввода-вывода
Иерархия классов ввода-вывода
- Файловый ввод
- Файловый вывод
- Буферы потоков
- Строковые потоки
- Двоичные файлы
Комбинирование кода языков С и С++
Конструирование уникальных манипуляторов
- Манипуляторы без параметров
- Манипуляторы с одним параметром
- Манипуляторы с несколькими параметрами
- Резюме
Глава 18. Работа в объектно-ориентированной среде
- Применение стека в C++
Применение связных списков в С++
- Создание родительского класса
- Производный класс
- Использование дружественного класса
- Программа, использующая связный список
- Результат работы программы
- Резюме
Глава 19. Шаблоны и стандартная библиотека шаблонов
- История создания библиотеки STL
Преимущества использования библиотеки STL
Стандартизация языков
Структура библиотеки STL
- Контейнеры
- Адаптеры контейнеров
- Алгоритмы
- Итераторы
- Дополнительные элементы библиотеки STL
- Шаблоны вне структур
- Ключевое слово template
- Шаблоны функций
- Шаблоны классов
- Библиотека STL: проблемы с шаблонами
Шаблон <vector>
- Шаблонные векторы
- Реализация векторов
- Шаблоны функций вектора
- Доступ к элементам шаблона <vector>
- Вставка и удаление элементов шаблона <vector>
- Два различных размера векторов
- Другие операции шаблона <vector>
- Синтаксис шаблона <vector>
- Операции typedef шаблона <vector>
- Перегруженные операторы шаблона <vector>
- Методы шаблона <vector>
- Примеры программ
- Резюме
ЧАСТЬ 4
Мастера для создания приложений Windows
Глава 20. Концепции и средства программирования Windows-приложений
Основные понятия
Среда Windows
Преимущества Windows
Формат исполняемых файлов
Базовые концепции программирования в среде Windows и терминология
Что представляет собой окно Windows
Графические элементы окна
Процедурно-ориентированный класс окна
Объектно-ориентированное программирование и окна
Принципы обработки сообщений
Вызов системных функций
Заголовочный файл windows.h
Этапы создания приложения
Инструменты разработки приложений Windows средствами Visual С++
Файлы проектов
Редакторы ресурсов
Резюме
Глава 21. Мастера и процедурные приложения для Windows
- Структура приложения
- Компоненты Windows-приложений
- Функция WinMain()
- Структура WNDCLASSEX
- Определение оконного класса
- Создание окна
- Отображение и обновление окна
- Цикл обработки сообщений
- Оконная функция
- Обработка сообщений WM_PAINT
- Обработка сообщения WM_DESTROY
- Функция DefWindowProc()
- Создание процедурно-ориентированного проекта
Наполнение Windows-программы содержанием
- Рисование эллипса
- Рисование сегмента
- Рисование сектора
- Рисование прямоугольника
- Другой полезный проект
Приложение для построения круговых диаграмм
- Файл pie.cpp исходного текста
- Резюме
Глава 22. Библиотека MFC
- Зачем нужны библиотеки классов
Принципы, лежащие в основе MFC
Ключевые особенности MFC
Все начинается с CObject
Иерархия классов MFC
Текстовый редактор
- Построение приложения
- Резюме
Глава 23. Мастера и MFC-приложения
- Рисование графических примитивов в рабочей области окна
- Использование мастера Application Wizard
- Модификация кода шаблона
- Проверка модифицированного кода
- Дополнительные детали проекта
- Отображение ряда Фурье
- Создание шаблонного кода проекта Fourier
- Добавление ресурса диалогового окна
- Изменение ресурса меню
- Область заголовка и окно About проекта Fourier
- Код проекта Fourier
- Код для масштабирования графики
- Связь диалогового окна с проектом
- Тестирование проекта Fourier
- Построение гистограмм
- Строка заголовка
- Меню
- Значок окна About
- Окно About
- Диалоговое окно ввода данных
- Ядро кода BarChart
- Код для масштабирования графики
- Связь диалогового окна с проектом
- Тестирование проекта BarChart
- Резюме
ЧАСТЬ 5
Современные концепции программирования
Глава 24. Создание Windows-приложений на языке С#
Создание приложения CircleArea на C#
Формы и модули
Solution Explorer
Элементы управления и их свойства
Код проекта, принимаемый по умолчанию
Реакция на события
Изменение значений свойств из кода
Создание на C# Windows-приложения Tester
Резюме
Глава 25. Библиотека STL и Windows
- Комплексные числа
Синтаксис шаблона <complex>
- Класс complex <float>
- Класс complex <double>
- Класс complex <long double>
- Пример использования шаблона класса <complex>
Windows-приложение, использующее STL и MFC
- Код для изменения размеров графиков
- Тестирование проекта Complex2
- Резюме
Глава 26. Основы механизма OLE
- Свойства и спецификации OLE
- Объекты
- Файлы
- Данные
- Внедрение
- Внедренный объект
- Связывание
- Разработка приложения-контейнера
- Использование мастера AppWizard
- Обзор файлов проекта
- Тестирование приложения-контейнера
Резюме
Глава 27. Элементы управления ActiveX
- Основные концепции
- Правила разработки элементов управления
- Класс COIeControl
- Контейнеры
- Создание простого элемента управления ActiveX
- Создание проекта TDCtrl
- Код, сгенерированный мастером
- Модификация шаблона
- Изменение формы, размера и цвета элемента управления TDCtrl
- События мыши
- Заголовочный файл TDCtrlCtrl.h
- Тестирование окончательной версии элемента управления
Резюме
Глава 28. Динамически подключаемые библиотеки
- DLL, основанные на MFC
- Заголовочный файл Framer.h
- Файл исходного кода Framer.cpp
- Компоновка файла Framer.dll
- Приложение, вызывающее DLL
- Заголовочный файл DLLDemoView.h
- Файл исходного кода DemoView.cpp
- Резюме
Глава 29. Создание Web-форм
- Элементы управления Web
- Элементы управления RadioButton и RadioButtonList
- Элемент управления Calendar
- Элементы управления Validation
- Элементы управления ListBox и DropDownList
- Резюме
Предметный указатель
Начало
Cодержание
Отрывок
[Заказать книгу в магазине "Мистраль"]
|
|