Visual C++ 2010. Полный курс

Айвор Хортон

Следуя подробному и доступному руководству автора и выполняя упражнения, вы быстро станете квалифицированным программистом на языке C++. Полностью переделанная под выпуск 2010 года, эта книга ознакомит вас с новейшей средой разработки Visual C++ и научит создавать с ее помощью реальные приложения. С этой книгой вы на верном пути к мастерству написания приложений в обеих версиях языка C++ и успехам программирования.

В этой книге рассматриваются следующие темы:

  • Изучение основных тем программирования с использованием обеих технологий языка C++, предоставляемых средой разработки Visual C++ 2010;
  • Общие технологии поиска ошибок в программах на C++ и объяснение общих принципов отладки;
  • Обсуждение структуры и основных элементов, присутствующих в каждом приложении Windows;
  • Демонстрация основ разработки приложений Windows с использованием классов Microsoft Foundation Classes;
  • Руководство по разработке и созданию приложений Windows как на языке C++, так и C++/CLI;
  • Множество практических примеров и упражнений, которые помогут получить навыки программирования.

Издательство: Вильямс, 2011 г.

ISBN 978-5-8459-1698-3

Количество страниц: 1216.

Содержание книги «Visual C++ 2010. Полный курс»:

  • 20 Об авторе
  • 20 О техническом редакторе
  • 21 Благодарности
  • 22 Введение
    • 22 Программирование на языке C++
    • 22 Разработка приложений Windows
    • 23 Дополнительные возможности библиотек
    • 23 Для кого предназначена книга
    • 23 О чем эта книга
    • 24 Структура книги
    • 26 Что необходимо для работы с этой книгой
    • 26 Соглашения, принятые в книге
    • 27 Исходный код
    • 27 Замеченные опечатки
    • 28 От издательства
  • 29 Глава 1. Программирование в Visual C++ 2010
    • 30 Среда .NET Framework
    • 30 Общеязыковая исполняющая среда (CLR)
    • 31 Написание приложений C++
    • 33 Изучение программирования для Windows
      • 33 Изучение C++
      • 34 Стандарты C++
      • 34 Атрибуты
      • 35 Консольные приложения
      • 35 Концепции программирования для Windows
    • 37 Что такое интегрированная среда разработки?
      • 38 Редактор
      • 38 Компилятор
      • 38 Компоновщик
      • 38 Библиотеки
    • 39 Использование IDE
      • 40 Возможности панели инструментов
      • 40 Закрепляемые панели инструментов
      • 41 Документация
      • 41 Проекты и решения
      • 55 Настройка параметров среды разработки Visual C++ 2010
      • 56 Создание и выполнение приложений Windows
      • 60 Создание приложения Windows Forms
    • 62 Резюме
  • 63 Глава 2. Данные, переменные и вычисления
    • 64 Структура программы на C++
      • 72 Функция main()
      • 72 Операторы программы
      • 75 Отступы
      • 75 Блоки операторов
      • 76 Консольные программы, создаваемые автоматически
    • 77 Определение переменных
      • 77 Именование переменных
      • 78 Объявление переменных
      • 79 Начальные значения переменных
    • 80 Базовые типы данных
      • 80 Целочисленные переменные
      • 82 Символьные типы данных
      • 83 Модификаторы целочисленных типов
      • 84 Логический тип
      • 84 Типы с плавающей запятой
      • 86 Литералы
      • 86 Определение синонимов для типов данных
      • 87 Переменные с определенным набором значений
    • 88 Базовые операции ввода-вывода
      • 89 Ввод с клавиатуры
      • 89 Вывод в командную строку
      • 90 Форматирование вывода
      • 91 Управляющие последовательности
    • 93 Вычисления в C++
      • 94 Оператор присвоения
      • 94 Арифметические операции
      • 100 Вычисление остатка
      • 100 Изменение значения переменной
      • 101 Операторы инкремента и декремента
      • 103 Последовательность вычислений
    • 105 Преобразование и приведение типов
      • 106 Приведения типов в операторах присвоения
      • 106 Явные приведения типов
      • 107 Приведения в старом стиле
    • 108 Ключевое слово auto
    • 108 Выяснение типов
    • 109 Битовые операторы
      • 109 Битовое И
      • 111 Битовое ИЛИ
      • 112 Битовое исключающее ИЛИ
      • 113 Битовое НЕ
      • 113 Битовые операторы сдвига
    • 115 Концепции l- и r-значений
    • 116 Продолжительность хранения и область видимости
      • 116 Автоматические переменные
      • 119 Размещение объявлений переменных
      • 119 Глобальные переменные
      • 123 Статические переменные
    • 123 Пространства имен
      • 124 Объявление пространства имен
      • 126 Множественные пространства имен
    • 127 Программирование на C++/CLI
      • 127 Специфика C++/CLI: базовые типы данных
      • 131 Вывод C++/CLI в командную строку
      • 132 Специфика C++/CLI — форматирование вывода
      • 135 Клавиатурный ввод в C++/CLI
      • 136 Применение оператора safe_cast
      • 137 Перечисления C++/CLI
    • 142 Выяснение типов в C++/CLI
    • 142 Резюме
  • 146 Глава 3. Принятие решений и циклы
    • 146 Сравнение значений
      • 148 Оператор if
      • 149 Вложенные операторы if
      • 154 Вложенные операторы if-else
      • 156 Логические операторы и выражения
      • 158 Условный оператор
      • 160 Оператор switch
      • 164 Безусловный переход
    • 164 Повторение блока операторов
      • 165 Что такое цикл?
      • 168 Вариации цикла for
      • 175 Цикл while
      • 177 Цикл do-while
      • 178 Вложенные циклы
    • 182 Программирование на C++/CLI
      • 185 Цикл for each
    • 188 Резюме
  • 190 Глава 4. Массивы, строки и указатели
    • 191 Обработка множества однотипных элементов данных
      • 191 Массивы
      • 192 Объявление массивов
      • 195 Инициализация массивов
      • 197 Символьные массивы и обработка строк
      • 200 Многомерные массивы
    • 204 Косвенный доступ к данным
      • 204 Что такое указатель
      • 204 Объявление указателей
      • 206 Использование указателей
      • 206 Инициализация указателей
      • 213 Оператор sizeof
      • 215 Константные указатели и указатели на константы
      • 217 Указатели и массивы
    • 224 Динамическое выделение памяти
      • 224 Динамическая память, псевдоним «куча»
      • 225 Операторы new и delete
      • 226 Динамическое распределение памяти для массивов
      • 229 Динамическое распределение многомерных массивов
    • 229 Использование ссылок
      • 229 Что такое ссылка
      • 230 Объявление и инициализация ссылок
      • 230 Определение и инициализация ссылок r-значений
    • 231 Функции работы со строками из библиотеки «родного» C++
      • 231 Выяснение длины строки, ограниченной нулевым символом
      • 232 Объединение строк, ограниченных нулевым символом
      • 234 Копирование строк, ограниченных нулевым символом
      • 234 Сравнение строк, ограниченных нулевым символом
      • 235 Поиск в строках, ограниченных нулевым символом
    • 237 Программирование на C++/CLI
      • 238 Отслеживаемые дескрипторы
      • 240 Массивы среды CLR
      • 255 Строки
      • 264 Отслеживающие ссылки
      • 265 Внутренние указатели
    • 268 Резюме
  • 271 Глава 5. Структурная организация программ
    • 272 Что такое функции
      • 273 Зачем нужны функции
      • 273 Структура функции
      • 275 Использование функций
    • 279 Передача аргументов в функцию
      • 280 Механизм передачи по значению
      • 281 Указатели как аргументы функций
      • 283 Передача массивов в функцию
      • 287 Ссылки как аргументы функции
      • 289 Использование модификатора const
      • 291 Ссылочные параметры r-значения
      • 292 Аргументы функции main()
      • 294 Получение функцией переменного количества аргументов
    • 296 Возвращение значений из функций
      • 297 Возвращение указателя
      • 300 Возвращение ссылки
      • 302 Статические переменные в функциях
    • 304 Рекурсивные вызовы функции
      • 306 Использование рекурсии
    • 307 Программирование на C++/CLI
      • 308 Функции, получающие переменное количество аргументов
      • 309 Аргументы функции main()
    • 310 Резюме
  • 312 Глава 6. Дополнительные сведения о структурах программ
    • 313 Указатели на функции
      • 313 Объявление указателей на функции
      • 316 Указатель на функцию как аргумент
      • 318 Массивы указателей на функции
    • 318 Инициализация параметров функций
    • 320 Исключения
      • 322 Передача исключений
      • 323 Перехват исключений
      • 324 Обработка исключений в библиотеке MFC
    • 325 Обработка ошибок выделения памяти
    • 326 Перегрузка функций
      • 327 Что такое перегрузка функций
      • 329 Ссылочные типы и выбор версии перегруженной функции
      • 330 Когда нужно перегружать функции
    • 330 Шаблоны функций
      • 331 Использование шаблона функции
    • 333 Использование оператора decltype
    • 335 Пример использования функций
      • 335 Реализация калькулятора
      • 338 Удаление пробелов из строки
      • 339 Вычисление выражения
      • 341 Получение значения элемента
      • 342 Анализ числа
      • 345 Собираем программу вместе
      • 347 Расширение программы
      • 348 Извлечение подстроки
      • 351 Запуск модифицированной программы
    • 351 Программирование на C++/CLI
      • 352 Что такое общие функции
      • 358 Программа калькулятора для CLR
    • 364 Резюме
  • 367 Глава 7. Определение собственных типов данных
    • 368 Структуры в C++
      • 368 Что такое структура
      • 368 Определение структуры
      • 369 Инициализация структуры
      • 369 Доступ к членам структуры
      • 373 Поддержка средства IntelliSense при работе со структурами
      • 374 Структура RECT
      • 374 Использование указателей со структурами
    • 376 Типы данных, объекты, классы и экземпляры
      • 378 Первый класс
      • 378 Операции с классами
      • 379 Терминология
    • 379 Что такое класс
      • 380 Определение класса
      • 381 Определение объектов класса
      • 381 Доступ к переменным-членам класса
      • 383 Функции-члены класса
      • 385 Расположение определения функции-члена
      • 386 Встроенные функции
    • 387 Конструкторы классов
      • 387 Что такое конструктор
      • 389 Стандартный конструктор
      • 392 Присвоение параметрам значений по умолчанию в классе
      • 394 Использование списка инициализации в конструкторе
      • 394 Создание явного конструктора
    • 395 Закрытые члены класса
      • 398 Доступ к закрытым членам класса
      • 399 Дружественные функции класса
      • 402 Стандартный конструктор копирования
    • 403 Указатель this
    • 406 Константные объекты класса
      • 406 Константная функция-член класса
      • 407 Определения функций-членов вне класса
    • 408 Массивы объектов класса
    • 410 Статические члены класса
      • 410 Статические переменные-члены класса
      • 413 Статические функции-члены класса
    • 414 Указатели и ссылки на объекты классов
      • 414 Указатели на объекты класса
      • 416 Ссылки на объекты класса
    • 418 Программирование на C++/CLI
      • 419 Определение типов классов значений
      • 424 Определение ссылочных классов
      • 427 Определение конструктора копирования для ссылочного класса
      • 427 Свойства классов
      • 440 Поля initonly
      • 442 Статические конструкторы
    • 442 Резюме
  • 445 Глава 8. Дополнительные сведения о классах
    • 446 Деструкторы классов
      • 446 Что такое деструктор
      • 446 Стандартный деструктор
      • 448 Деструкторы и динамическое распределение памяти
    • 451 Реализация конструктора копирования
    • 454 Совместное использование памяти переменными
      • 454 Определение объединений
      • 456 Объединения в классах и структурах
    • 456 Перегрузка операторов
      • 457 Реализация перегруженного оператора
      • 460 Реализация полной поддержки оператора
      • 464 Перегрузка оператора присвоения
      • 469 Перегрузка оператора сложения
      • 473 Перегрузка операторов инкремента и декремента
      • 474 Перегрузка оператора вызова функции
    • 475 Проблемы копирования объектов
      • 475 Как избежать ненужных операций копирования
      • 479 Применение ссылочных параметров r-значений
      • 481 Именованные объекты — l-значения
    • 486 Шаблоны классов
      • 486 Определение шаблона класса
      • 490 Создание объектов из шаблона класса
      • 493 Шаблоны классов с несколькими параметрами
      • 495 Шаблоны для объектов функций
    • 495 Использование классов
      • 495 Понятие интерфейса класса
      • 495 Определение проблемы
      • 496 Реализация класса CBox
      • 514 Использование класса CBox
    • 517 Организация кода программы
      • 518 Именование программных файлов
    • 519 Классы для работы со строками из «родной» библиотеки C++
      • 520 Создание строковых объектов
      • 521 Конкатенация строк
      • 525 Обращение к строкам и их модификация
      • 528 Сравнение строк
      • 532 Поиск в строках
    • 541 Программирование на C++/CLI
      • 541 Перегрузка операторов в классах значений
      • 547 Перегрузка операторов инкремента и декремента
      • 548 Перегрузка операторов в ссылочных классах
      • 550 Реализация оператора присвоения для ссылочных типов
    • 551 Резюме
  • 554 Глава 9. Наследование классов и виртуальные функции
    • 555 Основы объектно-ориентированного программирования
    • 556 Наследование в классах
      • 557 Что такое базовый класс
      • 557 Наследование классов от базового класса
    • 561 Управление доступом при наследовании
      • 563 Работа конструктора в производном классе
      • 567 Объявление членов класса как protected
      • 570 Уровень доступа унаследованных членов класса
    • 571 Конструктор копирования в производном классе
    • 575 Члены класса как друзья
      • 577 Дружественные классы
      • 577 Ограничения отношения дружественности классов
    • 577 Виртуальные функции
      • 580 Что такое виртуальная функция
      • 582 Использование указателей на объекты классов
      • 583 Использование ссылок с виртуальными функциями
      • 585 Чистые виртуальные функции
      • 586 Абстрактные классы
      • 589 Непрямые базовые классы
      • 591 Виртуальные деструкторы
    • 594 Приведение между типами классов
    • 595 Вложенные классы
    • 598 Программирование на C++/CLI
      • 599 Упаковка и распаковка
      • 599 Наследование классов в C++/CLI
      • 605 Интерфейсные классы
      • 606 Определение интерфейсных классов
      • 610 Классы и сборки
      • 615 Функции, указанные как new
      • 615 Делегаты и события
      • 628 Деструкторы и финализаторы в ссылочных классах
      • 630 Общие классы
    • 641 Резюме
  • 645 Глава 10. Стандартная библиотека шаблонов
    • 646 Что такое стандартная библиотека шаблонов
      • 646 Контейнеры
      • 647 Адаптеры контейнеров
      • 648 Итераторы
      • 649 Алгоритмы
      • 650 Объекты функций в библиотеке STL
      • 650 Адаптеры функций
    • 650 Диапазон контейнеров STL
    • 651 Последовательные контейнеры
      • 651 Создание контейнеров vector
      • 655 Емкость и размер контейнера vector
      • 660 Обращение к элементам в векторе
      • 660 Вставка и удаление элементов в векторе
      • 662 Сохранение в векторе объектов класса
      • 667 Сортировка элементов вектора
      • 668 Хранение указателей в векторе
      • 670 Контейнеры — двунаправленные очереди
      • 674 Использование контейнеров List
      • 683 Использование других последовательных контейнеров
    • 699 Ассоциативные контейнеры
      • 699 Использование карт
      • 711 Использование контейнера multimap
    • 712 Дополнительные сведения об итераторах
      • 713 Использование итераторов входного потока
      • 716 Использование вставляющих итераторов
      • 717 Использование итераторов выходного потока
    • 720 Дополнительные сведения об объектах функций
    • 721 Дополнительные сведения об алгоритмах
      • 721 Функция fill()
      • 721 Функция replace()
      • 722 Функция find()
      • 722 Функция transform()
    • 724 Лямбда-выражения
      • 725 Директива фиксации
      • 726 Фиксация конкретных переменных
      • 726 Шаблоны и лямбда-выражения
      • 731 Оболочка лямбда-выражения
    • 732 Библиотека STL для программ C++/CLI
      • 733 Контейнеры STL/CLR
      • 733 Использование последовательных контейнеров
      • 741 Использование ассоциативных контейнеров
    • 748 Лямбда-выражения в C++/CLI
    • 748 Резюме
  • 750 Глава 11. Приемы отладки
    • 751 Понятие отладки
      • 752 Программные ошибки
      • 753 Распространенные ошибки
    • 754 Базовые операции отладки
      • 756 Установка точек останова
      • 758 Установка точек трассировки
      • 758 Запуск отладки
      • 763 Изменение значения переменной
    • 763 Добавление отладочного кода
      • 764 Использование утверждений
      • 765 Добавление собственного отладочного кода
    • 771 Отладка программы
      • 771 Стек вызовов
      • 773 Переход к ошибке
    • 776 Проверка расширенного класса
      • 779 Поиск следующей ошибки
    • 779 Отладка динамической памяти
      • 780 Функции проверки динамической памяти
      • 781 Управление отладочными операциями динамической памяти
      • 783 Отладочный вывод динамической памяти
    • 789 Отладка программ C++/CLI
      • 789 Использование классов Debug и Trace
      • 799 Получение вывода трассировки в приложениях Windows Forms
    • 800 Резюме
  • 801 Глава 12. Концепции программирования для Windows
    • 802 Основы программирования для Windows
      • 803 Элементы окна
      • 804 Программы Windows и операционная система
      • 805 Программирование, управляемое событиями
      • 805 Сообщения Windows
      • 806 Интерфейс API Windows
      • 806 Типы данных Windows
      • 807 Нотация программ Windows
    • 808 Структура программы Windows
      • 809 Функция WinMain()
      • 821 Функции обработки сообщений
      • 826 Простая программа Windows
    • 827 Организация программ Windows
    • 829 Библиотека Microsoft Foundation Classes
      • 829 Нотация библиотеки MFC
      • 830 Структуризация программы MFC
    • 834 Использование Windows Forms
    • 835 Резюме
  • 837 Глава 13. Программирование для нескольких ядер
    • 838 Основы параллельных вычислений
    • 838 Введение в библиотеку шаблонов для параллельных вычислений
    • 838 Алгоритмы параллельной обработки
      • 839 Использование алгоритма parallel_for
      • 841 Использование алгоритма parallel_for_each
      • 843 Использование алгоритма parallel_invoke
    • 844 Реальная проблема параллельной обработки
    • 860 Критические разделы
      • 860 Использование объекта critical_section
      • 860 Блокировка и разблокировка разделов кода
    • 863 Шаблон класса combinable
    • 865 Задачи и группы задач
    • 869 Резюме
  • 871 Глава 14. Программирование для Windows с использованием библиотеки MFC
    • 872 Концепция «документ-представление» в библиотеке MFC
      • 872 Что такое документ
      • 872 Документные интерфейсы
      • 873 Что такое представление
      • 874 Связь документа с его представлениями
      • 874 Ваше приложение и библиотека MFC
    • 877 Создание приложений MFC
      • 879 Создание приложения SDI
      • 883 Вывод мастера MFC Application Wizard
      • 895 Создание приложения MDI
    • 897 Резюме
  • 899 Глава 15. Работа с меню и панелями инструментов
    • 900 Взаимодействие с Windows
      • 900 Что такое карты сообщений
      • 904 Категории сообщений
      • 904 Обработка сообщений в программах
    • 906 Расширение программы Sketcher
    • 906 Элементы меню
      • 906 Создание и редактирование ресурсов меню
    • 910 Добавление обработчиков сообщений меню
      • 911 Выбор класса для обработки сообщений меню
      • 912 Создание функций сообщений меню
      • 913 Создание функций сообщений меню
      • 917 Добавление обработчиков сообщений для обновления пользовательского интерфейса
    • 920 Добавление кнопок панели инструментов
      • 922 Редактирование свойств кнопки панели инструментов
      • 923 Испытание кнопок панели инструментов
      • 924 Добавление всплывающих подсказок
    • 925 Меню и панели инструментов в программах C++/CLI
      • 925 Технология Windows Forms
      • 926 Приложения Windows Forms
      • 930 Добавление меню в версию CLR программы Sketcher
      • 933 Добавление обработчиков событий для пунктов меню
      • 934 Реализация обработчиков событий
      • 936 Установка отметок напротив соответствующих пунктов меню
      • 937 Добавление панели инструментов
    • 942 Резюме
  • 945 Глава 16. Рисование в окне
    • 945 Основы рисования в окне
      • 946 Клиентская область окна
      • 947 Интерфейс графических устройств Windows
    • 949 Механизм рисования в Visual C++
      • 949 Класс представления в вашем приложении
      • 950 Класс CDC
    • 959 Практика рисования графики
    • 962 Программирование для мыши
      • 962 Сообщения от мыши
      • 964 Обработчики сообщений мыши
      • 966 Рисование с помощью мыши
    • 990 Испытание программы Sketcher
      • 991 Запуск примера
      • 992 Захват сообщений мыши
    • 993 Рисование с помощью среды CLR
      • 994 Рисование в форме
      • 994 Добавление обработчиков событий мыши
      • 996 Определение классов элементов C++/CLI
      • 1005 Реализация обработчика событий MouseMove
      • 1006 Реализация обработчика событий MouseUp
      • 1006 Реализация обработчика события Paint для формы
    • 1007 Резюме
  • 1010 Глава 17. Создание документа и усовершенствование представления
    • 1011 Создание документа приложения Sketcher
      • 1011 Использование контейнера list<T> для приложения Sketch
    • 1015 Усовершенствование представления
      • 1015 Обновление множественных представлений
      • 1018 Прокрутка представлений
      • 1022 Использование режима отображения MM_LOENGLISH
    • 1023 Удаление и перемещение фигур
    • 1024 Реализация контекстного меню
      • 1025 Связывание меню с классом
      • 1028 Проверка контекстных меню
      • 1029 Подсветка элементов
      • 1032 Обработка сообщений меню
    • 1040 Работа с маскированными элементами
    • 1041 Расширение версии CLR приложения CLRSketcher
      • 1041 Преобразования системы координат
      • 1044 Определение класса Sketch
      • 1046 Рисование эскиза в обработчике событий Paint
      • 1047 Реализация механизма подсветки элементов
      • 1052 Создание контекстных меню
    • 1059 Резюме
  • 1061 Глава 18. Работа с диалоговыми окнами и элементами управления
    • 1062 Понятие диалоговых окон
    • 1062 Что такое элементы управления
    • 1063 Создание ресурса диалогового окна
      • 1064 Добавление элементов управления в диалоговое окно
    • 1065 Программирование для диалогового окна
      • 1065 Добавление класса диалогового окна
      • 1067 Модальные и немодальные диалоговые окна
      • 1067 Отображение диалогового окна
    • 1070 Поддержка элементов управления диалоговых окон
      • 1071 Инициализация элементов управления
      • 1072 Обработка сообщений переключателей
    • 1073 Завершение операций диалогового окна
      • 1073 Добавление ширины пера к документу
      • 1074 Добавление ширины пера к элементам
      • 1075 Создание элементов в представлении
      • 1076 Проверка диалогового окна
    • 1076 Использование кнопки счетчика
      • 1077 Добавление пункта меню и кнопки панели инструментов для функции масштабирования
      • 1077 Создание кнопки счетчика
      • 1079 Создание класса диалогового окна масштабирования
      • 1082 Отображение кнопки счетчика
    • 1083 Использование показателя масштаба
      • 1083 Масштабируемые режимы отображения
      • 1085 Установка размера документа
      • 1085 Установка режима отображения
      • 1087 Реализация прокрутки с масштабированием
    • 1089 Использование класса CTaskDialog
      • 1089 Отображение диалогового окна задач
      • 1092 Создание объектов CTaskDialog
    • 1094 Работа с панелями состояния
      • 1095 Добавление панели состояния в обрамляющее окно
    • 1098 Использование окна списка
      • 1098 Удаление диалогового окна масштаба
      • 1099 Создание элемента управления списком
    • 1102 Использование элемента управления — поле редактирования
      • 1102 Создание ресурса поля редактирования
      • 1104 Создание класса диалогового окна
      • 1105 Добавление пункта меню Text
      • 1106 Определение текстового элемента
      • 1107 Реализация класса CText
      • 1107 Создание текстового элемента
    • 1112 Диалоговые окна и элементы управления в версии программы Sketcher для среды CLR
      • 1112 Добавление диалогового окна
      • 1120 Создание текстовых элементов
    • 1128 Резюме
  • 1130 Глава 19. Сохранение и печать документов
    • 1131 Что такое сериализация
    • 1131 Сериализация документа
      • 1131 Сериализация в определении класса документа
      • 1132 Сериализация в реализации класса документа
      • 1135 Возможности классов на базе класса CObject
      • 1136 Процесс сериализации
      • 1137 Как реализовать сериализацию для класса
    • 1138 Применение сериализации
      • 1138 Запись изменений в документе
      • 1139 Сериализация документа
      • 1141 Сериализация классов элементов
    • 1145 Испытание сериализации
    • 1146 Печать документа
      • 1147 Процесс печати
    • 1150 Реализация многостраничной печати
      • 1151 Получение полного размера документа
      • 1152 Сохранение данных печати
      • 1153 Подготовка к печати
      • 1154 Очистка после печати
      • 1155 Подготовка контекста устройства
      • 1156 Печать документа
      • 1160 Получение печатного вывода документа
    • 1161 Сериализация и печать в версии CLR программы Sketcher
      • 1161 Двоичная сериализация
      • 1165 Сериализация класса Sketch
      • 1177 Печать эскиза
    • 1178 Резюме
  • 1180 Глава 20. Написание собственных библиотек DLL
    • 1180 Что такое библиотека DLL
      • 1182 Как работают библиотеки DLL
      • 1185 Содержимое библиотеки DLL
      • 1186 Вариации библиотек DLL
    • 1187 Что помещать в библиотеку DLL
    • 1188 Написание библиотек DLL
      • 1188 Написание и использование библиотек DLL расширения
    • 1196 Резюме
  • 1198 Предметный указатель

Инструкция как скачать книгу Айвор Хортон: Visual C++ 2010. Полный курс в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.
Visual C++ 2010. Полный курс
Рейтинг книги:
0 голосов
2075

Поиск книг:




При поиске учитываются только слова, длина которых больше 3-х символов.

Статистика: