Глава 1. Типы данных, простые переменные и основные операторы цикла
5
Структура рабочего стола среды программирования 5
Главное окно 6
Структура программ в VC++ 8
Переход к созданию консольного приложения 9
Создание простейшего консольного приложения 17
Программа с оператором while 24
Имена и типы переменных 26
Оператор While 27
Оператор for 30
Символические константы 31
Глава 2. Программы для работы с символьными данными
33
Программа копирования символьного файла. Вариант 1 35
Программа копирования символьного файла. Вариант 2 38
Подсчет символов в файле. Вариант 1 39
Подсчет символов в файле. Вариант 2 42
Подсчет количества строк в файле 45
Подсчет количества слов в файле 46
Глава 3. Работа с массивами данных
51
Одномерные массивы 51
Многомерные массивы 55
Глава 4. Создание и использование функций
57
Создание некоторых функций 59
Ввод строки с клавиатуры 60
Функция выделения подстроки из строки 63
Функция копирования строки в строку 65
Головная программа для проверки функций getline(), substr(), copy() 65
Внешние и внутренние переменные 68
Область действия переменных 72
Как создать свой внешний файл 72
Атрибут static 73
Рекурсивные функции 76
Глава 5. Функции для работы с символьными строками
79
Основные стандартные строковые функции 79
Пример программы проверки функций 81
Глава 6. Дополнительные сведения о типах данных, операциях, выражениях и элементах управления
87
Новые типы переменных 87
Константы 91
Новые операции 92
Преобразование типов данных 94
Побитовые логические операции 95
Операции и выражения присваивания 96
Условное выражение 99
Операторы и блоки 99
Конструкция if-else 100
Конструкция else-if 100
Переключатель switch 105
Уточнение по работе оператора for 109
Оператор continue 110
Оператор goto и метки 110
Глава 7. Работа с указателями и структурами данных
111
Указатель 111
Указатели и массивы 116
Операции над указателями 118
Указатели и аргументы функций 118
Указатели символов и функций 120
Передача в качестве аргумента функции массивов размерности больше единицы 125
Массивы указателей 125
Указатели на функции 126
Структуры 129
Объявление структур 129
Обращение к элементам структур 131
Структуры и функции 134
Программы со структурами 134
Рекурсия в структурах 144
Битовые поля в структурах 151
Категории памяти 152
Глава 8. Классы в С++
155
Объектно-ориентированное программирование 155
Классы 157
Принципы построения классов 158
Примеры создания классов 162
Конструкторы и деструкторы класса 169
Конструктор класса 169
Деструктор класса 172
Классы, структуры и массивы в среде CLR 173
Классы и структуры 173
Массивы 175
Глава 9. Ввод и вывод в языках С и С++
181
Ввод и вывод в С 181
Ввод/вывод файлов 181
Стандартный ввод/вывод 189
Ввод/вывод в С++ 208
Общие положения 208
Ввод/вывод с использованием разных классов 209
Стандартный ввод/вывод в С++ 222
Глава 10. Продолжение изучения среды Visual C++
231
Создание проекта 233
Некоторые файлы проекта 237
Окно сведений об объекте 240
Вкладка Events 241
Вкладка Property Pages 243
Управление окнами документов 243
Работа с окном сведений об объекте 245
Редактор кода, h-модуль и режим дизайна (проектирования) 247
Контекстное меню редактора кода 248
Суфлер кода (подсказчик) 249
Настройка редактора кода 250
Начало редактирования кода программного модуля 253
Компоненты среды программирования VC++ 254
Класс Form 254
Помещение компонента в форму 256
Другие действия с дизайнером форм 256
Контекстное меню формы 257
Добавление новых форм к проекту 258
Организация работы с множеством форм 260
Cвойства формы 260
События формы 275
Некоторые методы формы 276
Рисование графиков в форме 279
Глава 11. Компоненты, создающие интерфейс между пользователем и приложением
285
Пространство имен System 286
Работа с переменными некоторых типов 287
Компонент Button 291
Свойства Button 292
События Button 298
Методы Button 299
Компонент Panel 299
Некоторые свойства Panel 300
Некоторые события Panel 300
Компонент Label 302
Некоторые свойства Label 303
События Label 304
Компонент TextBox 305
Некоторые свойства TextBox 305
События TextBox 309
Некоторые методы TextBox 311
Компонент MenuStrip 312
Некоторые свойства опций MenuStrip 322
События MenuStrip 324
Компонент ContextMenuStrip 324
Компонент ListView 325
Некоторые свойства ListView 327
События ListView 333
Компонент WebBrowser 335
Компонент ListBox 340
Как работать с ListBox 341
Свойства ListBox 341
Как использовать ListBox 346
Как формировать список строк 347
Компонент СomboBox 355
Свойства ComboBox 356
События ComboBox 358
Некоторые методы ComboBox 359
Примеры использования ComboBox 361
Компонент MaskedTextBox 369
Компонент СheckedkListBox 374
Пример: домашний телефонный справочник 379
Компоненты CheckBox и RadioButton 401
Компонент GroupBox 405
Компонент LinkLabel 406
Компонент PictureBox 421
Некоторые свойства компонента PictureBox 422
компонент DateTimePicker 426
Форматные строки даты и времени 429
Компонент TabControl 438
Как задавать страницы 439
Некоторые методы TabControl 443
Некоторые свойства страницы TabPage 444
Задача регистрации пользователя в приложении 447
Компонент Timer 459
Компонент ProgressBar 462
Компонент OpenFileDialog 463
Компонент SaveFileDialog 471
Компонент ColorDialog 480
Компонент FontDialog 481
Компонент PrintDialog 482
Компонент ToolStrip 482
Некоторые свойства ToolStrip 484
Использование ToolStrip 486
Глава 12. Работа с наборами данных
487
Общие сведения о базах данных 487
Проектирование баз данных 489
Модель базы данных 489
Структура проектирования БД 490
Идентификация сущностей и атрибутов 490
Проектирование таблиц 492
Определение неповторяющихся атрибутов 493
Набор правил при разработке таблицы 494
Выбор индексов 496
Язык SQL 496
Примеры оператора SELECT 498
Наборы данных (компонент DataSet) 499
Общая технология организации формирования набора данных в приложении 512
Примеры поиска по первичному ключу 517
Глава 13. Управление исключительными ситуациями
523
Операторы try, catch и throw 524
Пример 1 525
Пример 2 527
Пример 3 532
Функции, выдающие исключения 535
Глава 14. Преобразование между нерегулируемыми и регулируемыми (режим CLR) указателями
537
Пример 1. Перевод строки String^ в ASCII-строку 539
Пример 2. Перевод ASCII-строки в String^-строку 540
Пример 3. Преобразование String^-строки в строку wchar_t 542
Пример 4. Преобразование строки wchar_t в String^-строку 544
Пример 5. Маршаллинг native-структуры 546
Пример 6
. Работа с массивом элементов native-структуры в managed-функции 548
Пример 7. Доступ к символам в классе System::String 550
Пример 8. Преобразование char* в массив System::Byte 551
Пример 9. Преобразование System::String в wchar_t* или char* 552
Пример 10. Преобразование String в string 554
Пример 11. Преобразование string-строки в String-строку 559
Пример 12. Объявление дескрипторов в native-типах 560
Пример 13. Работа с дескриптором в native-функции 562
ПРИЛОЖЕНИЯ 565
Приложение 1. Некоторые соглашения, принятые в Microsoft 567
Приложение 2
. Преобразования между различными типами строк 568
Преобразование в тип String 568
Преобразование в тип char 569
Преобразование в тип wchar_t 570
Приложение 3
. Основные строковые типы данных, принятые в Visual C++ 2008 572
Тип char 572
Основные стандартные функции для работы со строками типа char 572
Пример программы проверки функций 574
Тип wchar_t — расширенные символы Unicode 579
Основные стандартные функции для работы со строками типа wchar_t 579
Тип string 583
Операторы 594
Тип String 595
Приложение 4. Описание прилагаемого диска 599