Если вы пользовались классом slist, вы могли обнаружить, что ваша программа тратит на заметное время на размещение и освобождение объектов класса slink. Класс slink - это превосходный пример класса, который может значительно выиграть от того, что программист возьмет под контроль управление свободной памятью. Для этого вида объектов идеально подходит оптимизирующий метод. Поскольку каждый slink создается с помощью new и уничтожается с помощью delete членами класса slist, другой способ выделения памяти не представляет никаких проблем.
Если производный класс осуществляет присваивание указателю this, то конструктор его базового класса будет вызываться только после этого присваивания, и значение указателя this в конструкторе базового класса будет тем, которое присвоено конструктором производного класса. Если базовый класс присваивает указателю this, то будет присвоено то значение, которое использует конструктор производного класса.
Например:
#include
struct base { base(); };
struct derived : base { derived(); }
base::base()
{
cout << "tbase 1: this=" << int(this) << "n";
if (this == 0) this = (base*)27;
cout << "tbase 2: this=" << int(this) << "n";
}
derived::derived()
{
cout << "tderived 1: this=" << int(this) << "n";
this = (this == 0) ? (derived*)43 : this;
cout << "tderived 2: this=" << int(this) << "n";
}
main()
{
cout << "base b;n";
base b;
cout << "new base b;n";
new base;
cout << "derived d;n";
derived d;
cout << "new derived d;n";
new derived;
cout << "at the endn";
}
порождаетвывод
base b;
base 1: this=2147478307
base 2: this=2147478307
new base;
base 1: this=0
base 2: this=27
derived d;
derived 1: this=2147478306
base 1: this=2147478306
base 2: this=2147478306
derived 1: this=2147478306
new derived;
derived 1: this=0
base 1: this=43
base 2: this=43
derived 1: this=43
at the end
Если деструктор производного класса осуществляет присваивание указателю this, то будет присвоено то значение, которое встретил деструктор его базового класса. Когда кто-либо делает в конструкторе присваивание указателю this, важно, чтобы присваивание указателю this встречалось на всех путях в конструкторе.
Другие работы по теме:
Память и ее виды
Образная память. Двигательная (моторная) память. Характеристика основных процессов памяти. Закономерности запоминания информации.
Эмоциональная память
Эмоциональная память. Следует начать на самом понятии «память». В широком смысле слова под биологической памятью понимают свойство живой системы хранить след от воспринятого раздражения. В такой общей формулировке понятие «память» объемлет очень широкий спектр явлений, в связи с чем, говоря о памяти высших животных и человека, предпочтительно подразумевать способность организма в процессе своей индивидуальной жизни запечатлевать, хранить, воспроизводить и забывать воспринятую информацию.
Фенилаланин
Фенилаланин - это незаменимая аминокислота. Эта аминокислота влияет на настроение, уменьшает боль, улучшает память и способность к обучению, подавляет аппетит.
Курсовая
ВАРИАНТ 58 Задание Cоставить простейшие программы по условиям приведенных ниже задач и записать их на диск. 5.1.Найти площадь сегмента. асчетная формула:
Скуратов, Алексей Иванович
Введение 1 Память Введение Русская карта Дальнего Востока (1745). Алексей Иванович Скуратов — один из первых русских исследователей Арктики. Участник Великой Северной экспедиции.
Корделин, Альфред
Введение 1 Биография 2 Память Список литературы Введение Альфред Корделин (фин. Alfred Kordelin, 6 ноября 1868(18681106), Раума, Великое княжество Финляндское — 7 ноября 1917, Моммила, Хаусъярви, Великое княжество Финляндское) — финский предприниматель и меценат.
Кисса
(англ. Cissa; VII век) — отшельник Линдисфарнский. Святой Католической церкви, память 23 сентября. Святой Кисса был отшельником в Нортумбрии, Англия. По преданию, он жил неподалёку от Линдисфарна (Lindisfarne).
Damnatio memoriae
(лат. проклятие памяти) — особая форма посмертного наказания, применявшаяся в древнем Риме к государственным преступникам — узурпаторам власти, участникам заговоров, к запятнавшим себя императорам. Любые материальные свидетельства о существовании преступника — статуи, настенные и надгробные надписи, упоминания в законах и летописях — подлежали уничтожению, чтобы стереть память об умершем.
Эвренос
Введение 1 Биография 2 Смерть и память Введение Хаджи Гази Эвренос-бей (тур. Hacı Gazi Evrenos Bey) — знаменитый османский полководец, основатель знатной османской династии Эвренос-оглу.
Ксения Миласская
Ксения Миласская (Римляныня, в миру — Евсевия; ум. во второй половине V века) — христианская святая, почитаемая Православной церковью в лике преподобных. Память совершается 24 января (по юлианскому календарю).
Исидора Тавеннийская
Исидо́ра Тавеннийская (также Исидора Тавенская Исидора Египетская ) — христианская монахиня и святая, одна из первых юродивых, жила в IV веке. Почитается в лике преподобных, память в Православной церкви 10 мая (по юлианскому календарю).
Пелагия дева Антиохийская
Не следует путать с Пелагией Антиохийской, преподобной V века. Пелагия Антиохийская — раннехристианская мученица, дева. Память в Православной церкви совершается 8 октября (по юлианскому календарю).
Алекперов, Алескер Гаджи Ага оглы
Введение 1 Биография 2 Память 3 Фильмография Список литературы Введение Алескер Гаджи Ага оглы Алекпе́ров (азерб. Ələsgər Hacıağa oğlu Ələkbərov; 15 ноября, (по другим источникам - 25 марта) 1910, Баку — 31 января 1963, Баку, Азербайджанская ССР) — азербайджанский советский актёр, народный артист СССР (1961), народный артист Азербайджанской ССР.
Конфликт в Магрибе
Конфликт в Магрибе (преимущественно в Алжире, Мавритании и Марокко) — вооружённое противостояние между официальными властями, поддерживаемые США и ЕС, и салафитскими повстанческими группировками, наиболее известными из которых являются Салафитская группа молитв и сражения, Свободная салафитская группа и Аль-Каида в Исламском Магрибе.[4][5]
Лигети, Карой
Введение 1 Биография 2 Память Список литературы Введение Ка́рой Ша́ндор Ли́гети (венг. Ligeti Kбroly Sбndor, 8 декабря 1890, Кишкёрёш, Австро-Венгрия — 2 июня 1919, Омск, Советская Россия) — венгерский революционер-интернационалист, поэт, руководитель венгерской парторганизации при Федерации иностранных групп РСДРП(б) и редактор её газеты, командир венгерского интернационального отряда.
Мемориальная доска в память о гомосексуалах, жертвах национал-социализма Рисиера ди Сан Савва
Мемориальная доска в память о гомосексуалах, жертвах национал-социализма — памятный знак, увековечивающий память гомосексуалов-жертв национал-социализма. Установлен в бывшем концлагере Рисьера-ди-Сан-Сабба в 2005 году по инициативе миланской ЛГБТ-организации Circolo Arcobaleno (Круг Радуги).[1] Треугольник напоминает о нашивках, использовавшихся для пометки заключённых в концентрационных лагерях.
Алексеев, Пётр Алексеевич революционер
Введение 1 Биография 2 Адреса в Санкт-Петербурге 3 Память о Петре Алексееве Список литературы Введение Пётр Алексе́евич Алексе́ев (14 (26) января 1849, деревня Новинская Смоленской губернии — 16 (28) августа 1891) — один из первых российских рабочих-революционеров, ткач.
Тимофей I
Архиепископ (греч. Τιμόθεος Α΄; ум. 20 июля 385) — архиепископ Александрийский (380—385), святитель. Память 13 февраля.
Шарангович, Василий Фомич
Введение 1 Биография 2 Память Список литературы Введение Васи́лий Фоми́ч Шаранго́вич (белор. Васіль Фаміч Шаранговіч; 20 февраля (4 марта) 1897, деревня Кочаны (Виленская губерния, ныне Мядельский район Минской области — 15 марта 1938, Москва) — советский партийный деятель.
Санданский, Яне Иванов
Введение 1 Биография 2 Балканские войны 3 Убийство 4 Память Введение Яне Иванов Санданский (болг. Яне Иванов Сандански; 18 мая 1872, село Влахи, Османская империя — 22 апреля 1915, Роженский монастырь, Болгария) болгарский революционер, один из руководителей ВМОРО.
Козицкий, Николай Григорьевич
План Введение 1 Биография 2 Память Список литературы Введение Николай Григорьевич Козицкий (24 января (5 февраля) 1880, Сциборы, Ушицкий уезд, ныне Житомирская область — начало ноября 1920 года, село Каменка, ныне Киевская область) — революционный деятель.
Тибетский мятеж 2008
Тибетский "мятеж" — массовые антикитайские протесты, вспыхнувшие в Тибете 14 марта 2008 года. Инициаторами протестов стали буддийские монахи, вышедшие на марш в память о годовщине изгнания маоистами Далай-ламы из Тибета. Вечером того же дня в Лхасе начались погромы китайских магазинов и сожжение машин.
Двойное убийство и самоубийство Криса Бенуа
Смерть Криса Бенуа — эпизод, в котором скандально замешана всемирная свободная онлайн-энциклопедия — Википедия, точнее её англоязычный раздел. 25 июня 2007 года, около 14 часов 30 минут, профессиональный рестлер Крис Бенуа, его жена Нэнси, а также их семилетний сын Даниель обнаружены мёртвыми в их собственном доме в городе Файеттвилль, штат Джорджия.
Бухвостов, Яков Григорьевич
Введение 1 Биография 2 Постройки 3 Приписываемые постройки 4 Память 5 Источники Введение Яков Григорьевич Бухвостов (дата рождения и смерти неизвестны, конец XVII — начало XVIII вв.) — русский архитектор, один из основоположников нарышкинского стиля, распространённого в то время в архитектуре Москвы и её окрестностей.
Оперативная память
Оперативная память является одним из важнейших элементов компьютера. Именно из нее процессор берет программы и исходные данные для обработки, в нее он записывает полученные результаты.
КЭШ память с прямым распределением
Принципы построения КЭШ - памяти с прямым распределением. Стратегия размещения и механизм преобразования адресов в кэш-памяти с прямым отображением.
Устройства ЭВМ: КЭШ-память
Кэш-память – это высокоскоростная память произвольного доступа, используемая процессором компьютера для временного хранения информации.
Устройства памяти
Text Graphics Презентацию выполняли Корепанова А Макрушина Т Graphics Устройства Памяти Устройства Памяти - устройства памяти данных, которые используются в компьютерах, чтобы хранить данные. Компьютер имеет много типов устройств памяти данных. Некоторые из них могут быть тематическими категориями как сменные Устройства Памяти данных и другие как не сменные Устройства Памяти данных.
Акцепт оферты
Оферта - письменное предложение продавца или покупателя о заключении договора. Оферта содержит все основные условия предстоящей сделки: наименование товара, количество, качество, цену, условия поставки, срок поставки, условия платежа, характер тары и упаковки. Различают два вида оферты: твердая и свободная.