Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

R.12.2 Временные объекты





В некоторых ситуациях транслятору бывает необходимо или удобносоздавать временные объекты. Использование временных объектовзависит от реализации. Если транслятору понадобился временныйобъект типа класса с конструктором, он должен обеспечить вызовконструктора для этого временного объекта. Аналогично, необходимовызывать деструктор для объекта класса, в котором описандеструктор. Приведем пример: class X { //... public: //... X(int); X(X&); ~X(); }; X f(X); void g() { X a(1); X b = f(X(2)); a = f(b); } Здесь нужен временный объект для построения X(2), прежде чемпередать его функции f() с помощью X(X&). Альтернативное решение, -построить объект X(2) в памяти, используемой для хранения параметрапри первом вызове f(). Помимо этого, временный объект можетпонадобиться для хранения результата f(X(2)) прежде, чем копироватьего в объект b с помощью X(X&), и здесь возможно альтернативноерешение: хранить результат f(X(2)) в памяти для объекта b. С другойстороны, существует много функций f(), для которых выполнениевыражения a=f(a) требует временного объекта или для параметра a,или для результата f(a), чтобы избежать нежелательного использованияпамяти, которой приписывается имя a. Транслятор обязан гарантировать уничтожение временных объектов.Точный момент уничтожения определяется реализацией. С временнымиобъектами можно производить только две операции: выбрать значениеобъекта (неявно копируя его) для использования в другом выражении,или взять ссылку на него. Если значение временного объекта получено,он считается ненужным и может уничтожаться немедленно. Если на негополучена ссылка, то уничтожать его нельзя, пока существует ссылка.Уничтожение должно произойти до выхода из области определенности,в которой был создан временный объект. Другой вид временных объектов обсуждается в $$R.8.4.3.







Дата добавления: 2015-09-04; просмотров: 315. Нарушение авторских прав; Мы поможем в написании вашей работы!




Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

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

Правила наложения мягкой бинтовой повязки 1. Во время наложения повязки больному (раненому) следует придать удобное положение: он должен удобно сидеть или лежать...

ТЕХНИКА ПОСЕВА, МЕТОДЫ ВЫДЕЛЕНИЯ ЧИСТЫХ КУЛЬТУР И КУЛЬТУРАЛЬНЫЕ СВОЙСТВА МИКРООРГАНИЗМОВ. ОПРЕДЕЛЕНИЕ КОЛИЧЕСТВА БАКТЕРИЙ Цель занятия. Освоить технику посева микроорганизмов на плотные и жидкие питательные среды и методы выделения чис­тых бактериальных культур. Ознакомить студентов с основными культуральными характеристиками микроорганизмов и методами определения...

Травматическая окклюзия и ее клинические признаки При пародонтите и парадонтозе резистентность тканей пародонта падает...

Подкожное введение сывороток по методу Безредки. С целью предупреждения развития анафилактического шока и других аллергических реак­ций при введении иммунных сывороток используют метод Безредки для определения реакции больного на введение сыворотки...

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

Studopedia.info - Студопедия - 2014-2025 год . (0.01 сек.) русская версия | украинская версия