Изучаем С++ создавая игры в ue4 Уилльям Шериф Изучайте программирование С++ с интересным применением реально мира, что позволит вам создавать ваши собственные игры!


 |  С т р а н и ц а     Совет



Pdf көрінісі
бет118/252
Дата06.01.2022
өлшемі12,25 Mb.
#11940
1   ...   114   115   116   117   118   119   120   121   ...   252
Байланысты:
аа

  


110 | 
С т р а н и ц а
 
 
Совет 
Когда функции-члены и объекты используются эффективно, ваш код будет читаться 
больше  как  проза  или  поэзия,  нежели  как  куча  операторных  символов 
столпотворённых вместе. 
  
Помимо  красоты  и  читабельности,  каково  значение  написания  функций-членов
Вне  объекта  Player,  с  помощью  единственной  строки  кода,  мы  сейчас  можем 
делать больше, чем просто уменьшать элемент hp на 15. Мы можем также делать 
другие  вещи  как    уменьшение  hp  игрока,  такие  как:  принимать  в  учётную  запись 
броню  игрока;  проверять,  неуязвим  ли  игрок  или  иметь  другие  эффекты,  когда 
игроку  наносится  урон.  То,  что  происходит,  когда  игроку  нанесён  урон,  должно 
получаться от функции damage(). 
Теперь представим, что у игрока есть класс брони. Давайте добавим поле в struct 
Player для класса брони: 
struct Player 

string name; 
int hp; 
int armorClass; 
};
  
  
Нам  понадобилось  бы  уменьшить  урон  полученный  игроком,  с  помощью  класса 
брони (armor) игрока. Так что теперь мы написали бы формулу, чтобы уменьшать 
hp. Мы можем сделать это не объектно-ориентированным способом, прямо войдя 
в поле данных объекта player: 
player.hp -= 15 
– player.armorClass; // не ООП 
Или  мы  можем  сделать  это  объектно-ориентированным  способом,  написав 
функцию-член, которая меняет данные элементов объекта player как надо.
 
 Внутри 
объекта player, мы можем написать функцию-член damage(): 
struct Player 

string name; 
int hp; 
int armorClass; 
void damage( int dmgAmount ) 

   hp -= dmgAmount - armorClass; 

};


Достарыңызбен бөлісу:
1   ...   114   115   116   117   118   119   120   121   ...   252




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет