MaterStudiorum.ru - домашняя страничка студента.
Минимум рекламы - максимум информации.


Авиация и космонавтика
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Банковское дело
Безопасность жизнедеятельности
Биографии
Биология
Биология и химия
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Издательское дело и полиграфия
Инвестиции
Иностранный язык
Информатика
Информатика, программирование
Исторические личности
История
История техники
Кибернетика
Коммуникации и связь
Компьютерные науки
Косметология
Краткое содержание произведений
Криминалистика
Криминология
Криптология
Кулинария
Культура и искусство
Культурология
Литература и русский язык
Литература(зарубежная)
Логика
Логистика
Маркетинг
Математика
Медицина, здоровье
Медицинские науки
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Москвоведение
Музыка
Муниципальное право
Налоги, налогообложение
Наука и техника
Начертательная геометрия
Новейшая история, политология
Оккультизм и уфология
Остальные рефераты
Педагогика
Полиграфия
Политология
Право
Право, юриспруденция
Предпринимательство
Промышленность, производство
Психология
Психология, педагогика
Радиоэлектроника
Разное
Реклама
Религия и мифология
Риторика
Сексология
Социология
Статистика
Страхование
Строительные науки
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Управленческие науки
Физика
Физкультура и спорт
Философия
Финансовые науки
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
Экология
Экономика
Экономико-математическое моделирование
Экономическая география
Экономическая теория
Эргономика
Этика
Юриспруденция
Языковедение
Языкознание, филология
    Начало -> Иностранный язык -> Классы: копирование и присваивание

Название:Классы: копирование и присваивание
Просмотров:142
Раздел:Иностранный язык
Ссылка:Скачать(15 KB)
Описание: Малышев Сергей Михайлович В этой части мы продолжим начатое в статье "Элементы класса, о которых всегда необходимо помнить" обсуждение конструктора копий (copy constructor) и операции присваивания (assignment operator). Или,

Часть полного текста документа:

Малышев Сергей Михайлович

В этой части мы продолжим начатое в статье "Элементы класса, о которых всегда необходимо помнить" обсуждение конструктора копий (copy constructor) и операции присваивания (assignment operator). Или, вернее, начнем подробное рассмотрение весьма нетривиальной проблемы, каковой на самом деле является копирование и присваивание в классах.

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

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

Что означает <создать копию>? Как один из вариантов, это означает присваивание значений элементов одного объекта элементам другого. Этот ответ, однако, далеко не полон. C++ - это язык, который практически не ограничивает выбор пути реализации программы. И способ создания копий объектов - не исключение из этого правила.

Иногда для копирования классов достаточно просто привести один объект в то же состояние, что и другой. Это весьма просто, и мы увидим, как это делается. Однако, если вашему приложению требуются другие методы копирования, C++ не станет создавать их за вас, хотя, если вы не напишете эти функции, компилятор сделает это сам. Правда, результат при этом может существенно отличаться от того, что вам бы хотелось.

В серии этих статей мы рассмотрим все аспекты этого вопроса, по разделам:

Понятие копирования;

Копирование буквальное и развернутое;

Когда выполняется копирование;

Разница между копированием и присваиванием

Положение в классах

Блокирование копирования и присваивания

Реализация копирования через присваивание

Копирование и присваивание в производных классах

Понятие копирования

Здесь мы поговорим об одном из аспектов внутреннего функционирования программ, написанных на C++ - о копировании. Копирование в программах на C++ происходит, прямо или косвенно, буквально на каждом шагу. Причем, не всегда с первого взгляда очевидно, где происходит копирование, а где - нет.

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

Определение конструктора копий.

Конструктор копий используется для создания новых объектов из уже суще-ствующих. Это означает, что, так же как для других конструкторов, новый объект еще не существует к моменту его вызова. Однако только конструкто-ру копий объект передается как аргумент по ссылке. Итак, синтаксис кон-структора копий прост. Конструктор копий произвольного класса X выгля-дит так:

Х(const X&) ; // конструктор копий класса Х

Так как конструктор копий - это все таки конструктор, то он должен иметь имя, совпадающее с именем класса (не забывайте - с учетом регистра символов). Назначение конструктора копий - дублирование объекта-аргумента для построения нового объекта.

Одно из основных правил: если аргумент не должен изменяться, то его следует передавать как константу. В то же время, если аргумент не описан как константа, то нельзя копировать объекты-константы. ............





Нет комментариев.



Оставить комментарий:

Ваше Имя:
Email:
Антибот:  
Ваш комментарий:  



Похожие работы:

Название:Семантика артиклей в аппозитивной конструкции
Просмотров:123
Описание: Министерство образования и науки Российской Федерации Магнитогорский Государственный Университет Кафедра английского языка Дипломная работа Семантика артиклей в аппозитивной

Название:Усиление металлических балок при реконструкции здания
Просмотров:87
Описание: МИНИСТЕРСТВО ОБРАЗОВАНИЯ РФ ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ Факультет Промышленного и Гражданского строительства Кафедра металлических конструк

Название:Железобетонные конструкции
Просмотров:107
Описание: Характеристики прочности бетона и арматуры Бетон В45: Нормативная прочность бетона на сжатие для предельных состояний соответственно первой группы – Rbn=32МПа, Расчетная прочность бетона на сжатие для пред

Название:Конструкция и обслуживание сканеров
Просмотров:101
Описание: Содержание 1. Введение 2. Анализ задания 2.1 Виды сканеров 2.1.1 Ручные сканеры 2.1.2 Листопротяжные сканеры 2.1.3 Планшетные сканеры 2.1.4 Барабанные сканеры 2.2 Параметры сканеров 2.2.1 Разрешение 2.2.2 Разрядн

Название:Реконструкция и модернизация оборудования в ОАО "Южноуральский молочный завод"
Просмотров:80
Описание: Введение В последнее время все больше растет число сельскохозяйственных предприятий переживающих кризис. Причины кризисного положения разнообразны: низкая урожайность сельскохозяйственных культур, устар

 
     

Вечно с вами © MaterStudiorum.ru