ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 7) онлайн

Глава 7. Массивы и строки

Основы массивов

Массивы как класс данных

Массивы и объекты

Строки

Стандартный класс string в C++

В повседневной жизни мы обычно объединяем похожие объекты в группы. Мы покупаем горошек в банках и яйца в коробках. В языках программирова- ния нам тоже необходимо группировать вместе данные одинакового типа. Ос- новным механизмом, использующимся для этих целей в C++, является массив. Он может содержать от нескольких единиц данных до многих миллионов. Данные, сгруппированные в массиве, могут быть как основных типов, таких, как int или float, так и определенных пользователем типов, таких, как структуры или объекты.

Массивы похожи на структуры тем, что они тоже объединяют некоторое ко- личество переменных в большой блок. Но в структуре обычно группируются переменные разных типов, а в массиве группируются однотипные данные. Более важное отличие в том, что к элементам структуры можно получить доступ по имени, а к элементам массива — по индексу. Использование индекса для каждо- го из элементов позволяет упростить доступ в случае большого количества эле- ментов.

Массивы существуют почти в каждом языке программирования. Массивы языка C++ похожи на массивы других языков и идентичны массивам язы- ка С.

В этой главе мы сначала рассмотрим массивы элементов основных типов данных, таких, как int и char. Затем мы рассмотрим массивы, использующиеся как члены классов, и массивы, содержащие в себе объекты. Таким образом, в этой главе мы планируем не только знакомство с массивами, но и расширение ваших знаний об ООП.

В стандарте C++ не только массивы предназначены для группирования элементов одного типа. Тип vector, находящийся в Стандартной библиотеке

шаблонов, является другим вариантом группировки. Мы рассмотрим векторы в главе 15 «Стандартная библиотека шаблонов (STL)».

В этой главе мы также рассмотрим два различных подхода к определению строк, которые используются для хранения текста и выполнения действий с ним. Первым видом строк является массив элементов типа char. Второй тип пред- ставляет собой объекты стандартного класса string в C++.

 

2