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



Pdf көрінісі
бет125/252
Дата06.01.2022
өлшемі12,25 Mb.
#11940
1   ...   121   122   123   124   125   126   127   128   ...   252
Байланысты:
аа

Геттеры и сеттеры 
Вы  должно  быть  заметили,  что  как  только  мы  поставили  private  к  определению 
класса  Player,  мы  больше  не  можем  считывать  или  записывать  имя  игрока  извне 
класса Player.  
Если мы попытаемся и считаем имя с помощью следующего кода: 
Player me; 
cout << me.name << endl; 
Или запишем имя вот так: 
me.name = "William"; 
Используя определение struct Player с private элементами, мы получим следующую 
ошибку: 
main.cpp(24) : error C2248: 'Player::name' : cannot access private member declared in 
class 'Player'
 
(невозможно получить доступ к частным элементам, объявленным в классе Player)
 
Это  просто  то,  чего  мы  и  просили,  когда  обозначали  поле  name  как  private.  Мы 
сделали его совсем недоступным снаружи класса Player.  
Геттеры 
Геттер  –  получатель  (также  известен  как  функция  доступа),  используется,  чтобы 
передавать  обратно  вызывающему,  копии  внутренних  элементов  данных.  Чтобы 
считать  имя  игрока,  мы  украшаем  класс  Player  функцией-членом  специально
чтобы извлечь копию этого частного (private) элемента данных. 
class Player 
{  
private: 
   string name; // 
недоступно снаружи этого класса! 
// 
остальная часть класса, как и прежде 
public: 
// 
Функция геттер извлекает копию переменной для вас 
string getName() 

    return name

 
};
 


115 | 
С т р а н и ц а
 
 
Итак,  теперь  возможно  считывать  информацию  об  имени  игрока.  Мы  можем 
делать это, используя следующее утверждение кода:
  
cout << player.getName() << endl; 
Геттеры  используются  для  извлечения  частных  элементов,  которые  иначе  будут 
недоступны снаружи класса. 


Достарыңызбен бөлісу:
1   ...   121   122   123   124   125   126   127   128   ...   252




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

    Басты бет