Программирование >>  Расширенная версия языка c++ 

1 ... 152 153 154 [ 155 ] 156 157 158 ... 227


string s; - - . ,: . . i : - ......; ;j

cout Введите слово: ; : y. i;--,

cin s; >;.;-. Ir;,.

inap<string, string>: : iterator p; т.- %

,.) r ,t (i

p = m. find(s) ; if (p != m.endO )

cout ЙНТОН1М: p->second; . r .

else

cou Такого слова даативном списке нет\п ; , -,[m-: return 0; .- > iTtj.-. .....

1 ... .


С помощью объектов типа string сохраните в списке следующие строки:

один два три четыре пять

шесть семь восемь девять десять

Затем отсортируйте список и выведите на экран содержимое отсортированного списка.

Поскольку класс string является контейнером, он может использоваться со стандартными алгоритмами. Создайте программу, в которой пользователь вводит строку. Затем с помощью функции count() сосчитайте в строке число символов и выведите это значение на экран.

Модифицируйте решение упражнения 2 таки ом, чтобы подсчитыва-лись только символы в нижнем регистре. (Подсказка: воспользуйтесь функцией countJf<).) - ::;:ч.-.-

Класс string - это конкретизация некоторого класса-шаблона. Какого?

Проверка усвоения

материала главыр

Теперь вам необходимо выполнить следующие упражнения и ответить на вопросы.

1. Каким образом библиотека стандартных шаблонов позволяет упростить процесс создания более надежных программ?

2. Опишите контейнер, итератор и алгоритм в терминах библиотеки стандартных шаблонов.



Проверка усвоения материала в целом

В этом разделе проверяется, хорошо ли вы усвоили материал этой и предыдущих глав.

1. Начиная с главы 1, вы проделали долгий путь. Потратьте еще немного времени для беглого просмотра книги. После этого подумайте, как можно было бы улучшить примеры (особенно в первых шести главах) с помощью всех известнхх вам теперь инструментов C++.

2. Программирование легче изучать в процессе работы. Пишите больше программ на C++. Пытайтесь экспериментировать с теми атрибутами языка, которые уникальны только для него.

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

4. И последнее. Запомните: C++ дает вам беспрецедентные возможности и важно научиться мудро ими пользоваться. Благодаря этим возможностям C++ позволит вам значительно расширить потенциальные области применения ваших приложений. Однако злоупотребление ими может привести к появлению программ, которые трудно понимать, которым почти невозможно следовать и которые слишком тяжело сопровождать. Язык программирования C++ - это мощнейший инструмент, но, как и любой другой инструмент, он хорош только тогда, когда находится в надежных руках.

3. Напишите программу создание шентного вектора, содержащего числа от 1 до 10. Затем из полученного вектора скопируйте в список только четные элементы.

4. В чем преимущество использования данных типа string? В чем их единственный недостаток?

5. Что такое предикат?

6. Переработайте пример 2 раздела 14.5 так, чтобы в нем использовались объекты типа string.

7. Начните изучение о&ьекгов-функций библиотеки стандартньк шаблонов. Для начала познакомьтесь со стандартными классами iinary function и Ы-nary function, которые помогут вам создавать объекты-функции.

8. Изучите техническую документацию на библиотеку стандартных шаблонов, поставляемую с вашим компилятором. Там вы обязательно обнаружите массу полезных инструментов и приемов программирования.




Приложение А

Некоторые отличия языков

программирования Си С++

Для большинства задач программирования C++ можно считать

надмножеством языка С (как он описан в стандарте ANSI по С), поэтому фактически все программы С являются также программами C++. Имеется несколько отличий, о части из которых было рассказано в главе 1. Ниже перечислены оставшиеся отличия, о которых вам следует знать:

Незначительное, но потенциально важное отличие между С и C++ состоит в том, что в С символьная константа автоматически преобразуется в целое, а в C++ нет.

В С можно объявить глобальную переменную несколько раз, что, хотя и считается плохим стилем программирования, но ошибкой не является. В

C++ многократное объявление глобальной переменной считается ошибкой.

□ В С по крайней мере первые 31 символ идентификатора являются значащими. В C++ значащими являются все символы идентификатора. Тем не менее с точки зрения практики столь длинные идентификаторы вряд ли могут где-нибудь пригодиться.

а В С вы можете вызвать функцию main() в любом месте программы, хотя какую-либо пользу от такого вызова представить себе довольно трудно. В C++ вызов функции main() из программы не допускается.

а В С нельзя получить адрес регистровой переменной (переменной типа

register), а в C++ - можно.

Q В С тип wcharj определяется с помощью объявления typedef. В С++ wchar t является ключевым словом..



1 ... 152 153 154 [ 155 ] 156 157 158 ... 227

© 2006 - 2025 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки.
Яндекс.Метрика