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;      // Використовування операції ::

}


 

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

66228. Кадровые стратегии и политика организации 111.5 KB
  Поддержание деятельности персонала также требует больших затрат. Одним из необходимых условий максимально эффективного использования персонала организации является разработка четкая формулировка и реализация кадровой политики организации.
66229. Служба управления персоналом: структура и функции 82 KB
  Основные функции служб персонала. Сегодня в силу возросшей важности их функций прежние кадровые службы преобразовываются в службы персонала или в управления человеческих ресурсов выполняющие интегрированные функции и обладающие широкими полномочиями.
66230. Нормативные основы служб управления персоналом 59 KB
  Вместе с тем есть вопросы труда которые могут решаться при помощи локальных правовых норм принятых в каждой организации. К таким актам относятся: приказы руководителя организации по кадровым вопросам по приему увольнению переводам положения о подразделениях должностные инструкции...
66231. Методы управления персоналом: административные, экономические, социально-психологические 58 KB
  Административные методы: их основания формы воздействия Методы управления это способы осуществления управленческих воздействий на персонал для достижения целей управления организацией. Исходя из оценки степени свободы объекта методы управления можно...
66233. Оценка эффективности управления персоналом 72 KB
  В качестве показателей используется удельный вес оплаты труда в себестоимости продукции процент выполнения норм выработки трудоёмкость продукции; фондовооружённость труда потери рабочего времени и т. Этот срок измеряется длительностью рабочего дня недели месяца года...
66235. Моделирование и конструирование швейных изделий 4.1 MB
  Характер принимаемых здесь формул достаточно сложный количество измерений фигур большое и для индивидуального производства которое учитывает особенности телосложения каждой конкретной фигуры был разработан на базе этой методики €œЕдиный метод конструирования одежды...
66236. Деякі аспекти інтерактивного навчання 109.52 KB
  Застосування цих методів виявило певні проблеми й ускладнення: зниження ролі вчителя в навчальному процесі, неекономне витрачання навчального часу, відсутність в учнів достатньої мотивації для такого типу навчання.