Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Лафоре Р. -> "Объектно-ориентированное программирование в С++" -> 115

Объектно-ориентированное программирование в С++ - Лафоре Р.

Лафоре Р. Объектно-ориентированное программирование в С++ — М.: Питер, 2004. — 992 c.
Скачать (прямая ссылка): obektnoorentprogramm2004.djvu
Предыдущая << 1 .. 109 110 111 112 113 114 < 115 > 116 117 118 119 120 121 .. 341 >> Следующая


Многие из методов класса string, которые мы обсудили, имеют варианты, отличающиеся количеством и типом аргументов. Обратитесь к документации вашего компилятора для выяснения деталей.

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

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

Класс string — в действительности только один из возможных строковых классов, производных от класса-шаблона basic_string. Класс string основан на типе char, но общий вариант использует тип wchar_t. Это позволяет классу basic_ string использоваться при работе с другими языками, имеющими больше символов, чем в русском. Файлы помощи вашего компилятора могут содержать список функций класса string в классе basic_String.

Резюме

Массивы содержат набор данных одинакового типа. Этот тип может быть простым типом, структурой или классом. Члены массива называются элементами. К элементам можно получить доступ, используя число, которое называется индексом. Элементы могут быть инициализированы определенным значением при определении массива. Массив может иметь несколько размерностей. Двумерный массив — это массив массивов. Адрес массива может быть использован как аргумент функции; сам массив при этом не копируется. Массив может быть использован как переменная класса. Необходимо позаботиться о том, чтобы данные не были помешены за пределы массива.

Строковый тип представляет собой массив элементов типа char. Последний символ такой строки должен быть нулевым, '\о\ Строковая константа имеет специальную форму, она может быть записана удобным для нас способом: это текст, заключенный в двойные кавычки. Для работы со строками используются различные библиотечные функции. Массив строк — это массив массивов типа char. Создавая строковую переменную, нужно быть уверенным, что массив имеет достаточный размер для помещения із него строки. Строки, используемые в качестве аргументов в библиотечных функциях, вы сможете найти в старых программах. Обычно такое использование строкового типа в современных программах не рекомендуется.

Предпочтительнее использовать для работы со строками объекты класса string. Эти объекты могут работать с перегруженными операциями и методами класса. Пользователю не нужно заботиться об управлении памятью при использовании объектов класса string.

Вопросы

Ответы на эти вопросы вы сможете найти в приложении Ж.

1. Доступ к элементам массива осуществляется с помощью:

а) подхода FIFO;

б) операции точки;

в) имени элемента;

г) индекса элемента. Вопросы 305

2. Все элементы массива должны быть_типа.

3. Напишите выражение, которое определяет одномерный массив, именованный как doubleArray, типа double, содержащий 100 элементов.

4. Элементы 10-элементного массива нумеруются начиная с_и до_

5. Напишите выражение, которое выводит j элемент массива doubleArray с помощью cout и операции «.

6. Какой по счету элемент массива doubleArray[7]?

а) шестой;

б) седьмой;

в) восьмой;

г) неизвестно.

7. Напишите выражение, которое определяет массив coins типа int и инициализирует его значениями пенни: 5 центов, 10 центов, 25 центов, 50 центов и 1 доллар.

8. При доступе к многомерному массиву его индексы:

а) разделены запятыми;

б) заключены в квадратные скобки и разделены запятыми;

в) разделены занятыми и заключены в квадратные скобки;

г) заключены в квадратные скобки.

9. Напишите выражение для доступа к 4-му элементу 2-го подмассива двумерного массива twoD.

10. Истинно ли следующее утверждение: в С++ возможна реализация четырехмерного массива?

11. Для двумерного массива flarr типа float запишите выражение, которое объявляет массив и инициализирует его первый подмассив значениями 52, 27, 83; второй — значениями 94, 73, 49; третий — значениями 3, 6, 1.

12. Имя массива, используемое в файлах кода, представляет собой_

массива.

13. При передаче имени массива в функцию она:

а) работает с тем же массивом, с которым работает и вызывающая функцию программа;

б) работает с копией массива, переданной программой;

в) ссылается на массив, используя то же имя, которое используется в вызывающей программе;

г) ссылается на массив, используя другое имя, чем то, которое используется в вызывающей программе. 306

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

14. Что определяет это выражение?

employee emplist [ 1000 ];

15. Напишите выражение для доступа к переменной salary структуры, которая является 17-м элементом массива emplist.

16. Данные, помещенные в стек первыми:

а) не имеют индексного номера;

б) имеют индекс, равный 0;

в) будут первыми извлечены из стека;

г) будут извлечены из стека последними.

17. Напишите выражение, которое определяет массив manybirds, содержащий в себе 50 объектов типа bird.

18. Истинно ли следующее утверждение: компилятор будет протестовать, если вы попытаетесь получить доступ к 14 элементу массива в 10-элемент-ном массиве?
Предыдущая << 1 .. 109 110 111 112 113 114 < 115 > 116 117 118 119 120 121 .. 341 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100