0092 - Языки программирования С++ - Два оператора . Возвращенный объект . Операто...

Стивен Прата. Языки программирования С++. 2005

 Стивен Прата 
.  Языки программирования С++ 
. 2005
. 5-93772-123-3
. DiaSoft
. 
. В новом издании популярной книги известного автора и специалиста по С++ рассматривается устоявшаяся версия языка, соответствующая стандарту ISO/АNSI. Изложение материала н
Название: 
Языки программирования С++
Автор: 
Стивен Прата
Год: 
2005
Издательство: 
DiaSoft
Описание: 

В новом издании популярной книги известного автора и специалиста по С++ рассматривается устоявшаяся версия языка, соответствующая стандарту ISO/АNSI. Изложение материала не привязано ни к какой конкретной реализации С++. В основе изложения материала лежит оригинальная методика, разработанная автором и неоднократно проверенная на различных группах пользователей.

Два оператора . Возвращенный объект . Оператор . Вопросы для повторения . Какие ошибки проявились при следующих попытках установления дружественных отношений. . . . Вы знаете, как создаются взаимно дружественные классы. Можно ли создать более ограниченную форму дружественных отношений, где только некоторые элементы класса В являются дружественными для класса А, а некоторые элементы А являют. . Какие проблемы могут возникнуть в результате следующего объявления вложенного класса. Чем . Предположим, что имеется иерархия классов исключения,. В каком порядке следует разместить блоки . В данной главе рассматривались классы . В чем отличие оператора . Модифицируйте классы . Сформируйте взаимно дружественные отношения. Добавьте к классу . . Добавьте метод . Этот метод должен функционировать только в том случае, если . Напишите короткую программу по тестированию этих новых возможностей. Измените листинг . Оба эти типа исключений должны быть производными от класса . Перехватив исключение . Глава . Возможность использовать код, написанный другими про. Именно эти соображения и привели к появлению библио. Существует много доступных коммерческих. В данной гла. Вначале будет рассмотрен класс . Затем мы обсудим шаб. И наконец, мы рассмотрим стандарт. Класс . Во многих ранних реализациях С. В главе . Стандарт . Этот класс определен в заголовочном файле . Класс . Одним словом, класс . Создание строки Изучение материала главы мы начнем с рассмотрения конструкторов класса . В конце концов, самое важное, что нам требуется знать . В коде из листинга . В табл. . Представления конструкторов упрощены, вследствие чего не очевиден тот факт, что . Здесь также не показан дополнительный аргумент для управления памятью . Тип . В классе . Обычно она равна максимальному значению, кото. Кроме того, в таблице используется распространенная аббревиатура . традици. Таблица . Листинг . Результаты выполнения программы. . Как и можно ожидать, оператор . Этот оператор является многократно пере Класс . Пятый конструктор получает в качестве аргументов С. Как отмечено в табл. конструктор интерпретировал бы содержимое памяти за строкой . Шестой конструктор включает аргумент. Затем конструктор использует значения между ячейками памяти, на которые указывают . Форма записи такого дапазона в математике — . Первый аргумент указывает на пер. Таким обра. На рис. . Конструктор . | |. . Следующее вы. Поскольку первый операнд не является объектом класса . Чтобы обеспечить совместимость с методами обработки оператором . Функция работает следующим образом. Поскольку входная последовательность короче, чем возможное количество символов для объекта класса . Результат этого проявляется в том, что оператор . Вместо этого применяется запись метода класса. Вместо этого в библиотеке строковых функций определяется функция, которая не является элементом класса . Таким образом, она исполь. Заметим, что, в отличие от версии . Это объясняется тем, что дан. В лис. Листинг . Результаты выполнения программы. Работа со строками К этому моменту мы с вами уже знаем, что объекты класса . А что еще можно делать. Все шесть операторов сравнения перегружены для объектов класса . Каждый оператор сравнения перегружен тремя способами, поэтому можно сравнивать объект класса . Поиск заданной подстроки или символа в строке можно осуществлять разными спо. Таблица . Возвращает индекс первого найденного символа подстроки или . Возвращает индекс первого найденного символа подстроки или . Возвращает индекс первого найденного символа подстроки или . Возвращает ИНДеКС НаЙДенНОГО СИМВОЛа ИЛИ . Метод . Например, выражение . Метод . Поэтому выражение . Метод . Таким образом, . Существует много и других методов, но приведенных выше достаточно, чтобы со. Программа содержит список слов в массиве объектов класса . В программе испольауется функция . Затем дефисы заменяются на правильно угаданные буквы. Листинг . В программе используется функция . Ее значение рав. Поэтому, так как индексация начинается с . В программе используется тот факт, что одна из перегруженных версий оператора . Здесь в программе используется дополнительный аргу. Поскольку буква была найдена в позиции . Цикл . Отметим, что . Однако поскольку оператор — выполняет сравнение с учетом регистра символов, в некоторых случаях могут возникать проблемы. Часто может потребоваться выполнить сравнение двух строк без учета регистра. Помочь делу можно, создав собственную перегруженную версию этой функции. Что еще можно делать со строками. Существует функция для копирования части одной строки в дру . Большинство из этих функций пе. Библиотека . В этом разделе класс .