Язык программирования C++. Вводный курс



   forex review        

Язык программирования C++. Вводный курс

В этой главе представлены основные элементы языка: встроенные типы данных, определения именованных объектов, выражений и операторов, определение и использование именованных функций. Мы посмотрим на минимальную законченную С++ программу, вкратце коснемся процесса компиляции этой программы, узнаем, что такое препроцессор, и бросим самый первый взгляд на поддержку ввода и вывода. Мы увидим также ряд простых, но законченных С++ программ.

Начинаем
Программы обычно пишутся для того, чтобы решить какую-то конкретную задачу. Например, книжный магазин ведет запись проданных книг. Регистрируется название книги и издательство, причем запись идет в том порядке, в каком книги продаются. Каждые две недели владелец магазина вручную подсчитывает количество проданных книг с одинаковым названием и количество проданных книг от каждого издателя.

Программа на языке C++
Программа на языке C++ - 2
Программа на языке C++ - 3
Программа на языке C++ - 4
Программа на языке C++ - 5
Порядок выполнения инструкций
Директивы препроцессора
Директивы препроцессора - 2
Директивы препроцессора - 3
Немного о комментариях

Простые и составные инструкции
Пустая инструкция используется там, где синтаксис С++ требует употребления инструкции, а логика программы– нет. Например, в следующем цикле while, копирующем одну строку в другую, все необходимые действия производятся внутри круглых скобок (условной части инструкции). Однако согласно правилам синтаксиса С++ после while должна идти инструкция. Поскольку нам нечего поместить сюда (вся работа уже выполнена), приходится оставить это место пустым:

Инструкции объявления
Инструкции объявления - 2
Инструкции объявления - 3
Инструкция if
Инструкция if - 2
Инструкция if - 3
Инструкция if - 4
Инструкция if - 5
Инструкция if - 6
Инструкция switch

Глобальные объекты и функции
Объявление функции в глобальной области видимости вводит глобальную функцию, а объявление переменной – глобальный объект. Глобальный объект существует на протяжении всего времени выполнения программы. Время жизни глобального объекта начинается с момента запуска программы и заканчивается с ее завершением.

Объявления и определения
Сопоставление объявлений в разных файлах
Сопоставление объявлений в разных файлах - 2
Несколько слов о заголовочных файлах
Несколько слов о заголовочных файлах - 2
Несколько слов о заголовочных файлах - 3
Несколько слов о заголовочных файлах - 4
Локальные объекты
Автоматические объекты
Регистровые автоматические объекты

Раскрутка стека
Предположим, что вызов функции, выполнение которой прекратилось в результате исключения, погружен в try-блок; в такой ситуации исследуются все предложения catch, ассоциированные с этим блоком. Если один из них может обработать исключение, то процесс заканчивается. В противном случае переходим к следующей по порядку вызывающей функции. Этот поиск последовательно проводится во всей цепочке вложенных вызовов. Как только будет найдено подходящее предложение, управление передается в соответствующий обработчик.

Раскрутка стека
Раскрутка стека - 2
Повторное возбуждение исключения
Перехват всех исключений
Перехват всех исключений - 2
Спецификации исключений
Спецификации исключений - 2
Спецификации исключений - 3
Спецификации исключений и указатели
Исключения и вопросы проектирования

Список инициализации членов
Инициализация одного объекта класса другим объектом того же класса, как, например: Account oldAcct( "Anna Livia Plurabelle" ); Account newAcct( oldAcct ); называется почленной инициализацией по умолчанию. По умолчанию– потому, что она производится автоматически, независимо от того, есть явный конструктор или нет. Почленной– потому, что единицей инициализации является отдельный нестатический член, а не побитовая копия всего объекта класса.

Почленная инициализация A
Почленная инициализация A - 2
Почленная инициализация A - 3
Инициализация члена объекта класса
Инициализация члена объекта класса - 2
Инициализация члена объекта класса - 3
Почленное присваивание A
Почленное присваивание A - 2
Соображения эффективности A
Соображения эффективности A - 2

Доступ к членам базового класса
Напомним, что объект производного класса состоит из одного или более подобъектов, соответствующих базовым классам, и части, относящейся к самому производному. Например, NameQuery состоит из подобъекта Query и объекта-члена string. Для иллюстрации поведения конструктора производного класса введем еще один член встроенного типа

Конструирование классов
Конструирование классов - 2
Конструктор базового класса
Конструктор производного класса
Альтернативная иерархия классов
Альтернативная иерархия классов - 2
Отложенное обнаружение ошибок
Деструкторы
Деструкторы - 2
Виртуальные функции в базовом классе

Строковый ввод
Считывание можно производить как в C-строки, так и в объекты класса string. Мы рекомендуем пользоваться последними. Их главное преимущество– автоматическое управление памятью для хранения символов. Чтобы прочитать данные в C-строку, т.е. массив символов, необходимо сначала задать его размер, достаточный для хранения строки. Обычно мы читаем символы в буфер, затем выделяем из хипа ровно столько памяти, сколько нужно для хранения прочитанной строки, и копируем данные из буфера в эту память

Строковый ввод
Строковый ввод - 2
Строковый ввод - 3
Строковый ввод - 4
Строковый ввод - 5
Дополнительные операторы ввода/вывода
Дополнительные операторы ввода/вывода - 2
Дополнительные операторы ввода/вывода - 3
Дополнительные операторы ввода/вывода - 4
Дополнительные операторы ввода/вывода - 5


Информатика и технология программирования
MathCAD
Матричные вычисления в Mathcad
Энциклопедия 3ds max 6
3DS MAX 7
Принципы организации IP-телефонии на базе решений Cisco Systems
Иллюстрированный самоучитель по введению в экспертные системы
Основы работы с системой MathCAD 7.0
Матричные вычисления в Mathcad
Бытовая радиоаппаратура и ее ремонт
Противостояние форматов DVD-R-RW и DVD+RW
Векторная графика в программе FreeHand
Active Directory для Windows Server 2003
Маурин Евгений - Возлюбленная Фаворита
Меррит Абрахам Грайс - Гори Ведьма Гори
Аппаратное обеспечение IBM PC
SW-CMM (Модель зрелости процессов разработки ПО)
Компьютерные сети Принципы, технологии, протоколы
Методы и средства инженерии программного обеспечения
Мельников Руслан - Тайный Рыцарь