69733

Покажчик this

Домашняя работа

Информатика, кибернетика и программирование

Кожний об’єкт містить свій екземпляр полів класу. Методи класу знаходяться в пам’яті в єдиному екземплярі і використовуються всіма об’єктами сумісно, тому необхідно забезпечити роботу методів з полями саме того об’єкта, для якого вони були викликані.

Украинкский

2014-10-09

22.5 KB

0 чел.

Самостійне вивчення

Тема 10: Покажчик this

Кожний об'єкт містить свій екземпляр полів класу. Методи класу знаходяться в пам'яті в єдиному екземплярі і використовуються всіма об'єктами сумісно, тому необхідно забезпечити роботу методів з полями саме того об'єкта, для якого вони були викликані. Це забезпечується передачею у функцію прихованого параметра this, в якому зберігається константний покажчик на викликаючий функцію об'єкт. Покажчик this неявно використовується всередині методу для посилань на елементи об'єкту. В явному вигляді цей покажчик застосовується в основном для повернення з методу покажчика (return this;) або посилання (return *this;) на об'єкт який викликався.

Для ілюстрації використання покажчика this додамо в клас monstr новий метод, який повертає посилання на найздоровішого (поле health) з двох монстрів, один з яких викликає метод, а інший передається йому як параметр (метод потрібно помістити в секцію public опису класу):

monstr &the_best(monstr &M)

{

if( health > M.health) return *this;

return M;

}

... monstr Vasia(50), Super(200);

// Новий об'єкт Best ініціалізувався значеннями полів Super:

monstr Best = Vasia.the_best(Super);

Покажчик this можна також застосовувати для ідентифікації поля класу у тому випадку, коли його ім'я співпадає з ім'ям формального параметра методу. Інший спосіб ідентифікації поля використовує операцію доступу до області видимості:

void cure(int health, int ammo)

{

this -> health+=health:         // Використання this

monstr:: ammo+=ammo;      // Використовування операції ::

}


 

А также другие работы, которые могут Вас заинтересовать

55066. Щастя. Як ми його розуміємо? 45 KB
  Тема: Щастя. Практична: Поглибити знання учнів про диспут та його проведення розширити розуміння поняття щастя виховувати людяність працьовитість любов до людей чесність. Щастя не слава не гроші Все це минає. Щастя це друзі хороші Шана людськая Олександр Підсуха.
55067. Грай, трембіто, дзвеніть, цимбали 533.5 KB
  Обладнання: кабінет образотворчого мистецтва зразки народних інструментів: трембіти роги цимбали; відеоматеріали. Тут грали і на скрипці і на сопілці особливо любили цимбали. У цій хаті жив і учився робити цимбали В.
55068. Всеукраїнська олімпіада з математики 795 KB
  Завдання: сформулювати і довести теореми Чеви і Менедая; показати їх застосування до доведення відомих і доведених раніше тверджень; вчити використовувати ці теореми під час розвязування задач на доведення і обчислення. Напередодні засідання учитель дає завдання трьом учням підготувати доведення тверджень про перетин в одній точці бісектрис внутрішніх кутів трикутника висот і медіан трикутника поділ кожної медіани їх точкою перетину на частини відношення довжин яких дорівнює 2:1 якщо вимірювати довжину першої частини від вершини....
55069. Позакласна робота з математики 223.5 KB
  Але вона має свої особливості: якщо урок проводиться за програмою то позакласні заняття не регламентуються нею що дозволяє вчителю підбирати завдання які відповідають рівню знань та умінь учнів здійснювати індивідуальний підхід проводити їх в цікавій формі спрямовувати на розширення поглиблення знань...
55070. Поняття про форми організації виховного процесу. Характеристика і методика проведення форм поза навчальної виховної роботи 63.5 KB
  Позакласна виховна робота - це здійснювана в позаурочний час різноманітна діяльність учнів під керівництвом учителіввихователів школи спрямована на задоволення інтересів і запитів розвиток їх інтелектуальних можливостей. Принципи на яких ґрунтується позакласна і позашкільна виховна робота Добровільний характер участі в ній учнів враховуються їх інтереси.
55071. Позакласне заняття. Весняні квіти з гофрованого паперу 34.5 KB
  Діти а для того щоб ви дізналися що ми будемо виготовляти сьогодні на занятті я вам пропоную відгадати загадки. Люблять її діти і дорослі за веселу пісеньку струмочків за дзвінкий спів птахів за ніжні проліски за м’який килим з шовкової травиці за ласкаве сонячне проміння за повітря напоєне запахом молодого листя. Діти тому сьогодні на занятті ми будемо виготовляти з паперу крокуси. Діти давайте повторимо послідовність нашої роботи.
55072. Письменники-лауреати Нобелівської премії 601 KB
  Мета: розповісти про засновника премії Альфреда Нобеля; ознайомити учнів з письменниками-лауреатами Нобелівської премії; сприяти перетворенню загальнолюдських цінностей в індивідуальний духовний досвід учнів; виховувати повагу до людської особистості, до скарбів культури; формувати гуманістичні ідеали добра.
55073. Інтелектуальне шоу «Брейн-ринг» 50 KB
  Мета: відновити в пам’яті учнів уявлення про фізичні та хвмвчні властивості хімічних речовин. Розвинути уміння працювати разом, розвинути логічне, творче мислення, увагу, пам’ять. Сформувати науковий світогляд. Виховати працелюбність, наполегливість, колективність в роботі, волю до подолання труднощів, повагу до думки іншого, інтерес до предмета.
55074. АНТРОПОНОМИНАНТЫ В РУССКОМ И ЧЕШСКОМ ЯЗЫКАХ: СЛОВООБРАЗОВАТЕЛЬНЫЙ АСПЕКТ 517 KB
  Определить критерии отбора антропономинантов; выделить из всех наименований лица антропономинанты со значением профессии, рода занятий, внешних и внутренних качеств человека; изучить словообразовательные способы и средства, по которым образуются наименования лица по профессии, роду занятий, по внешним и внутренним качествам человека;