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



Pdf көрінісі
бет72/252
Дата06.01.2022
өлшемі12,25 Mb.
#11940
1   ...   68   69   70   71   72   73   74   75   ...   252
Пишем код утверждений с if 
Теперь, когда у нас есть в арсенале двойной знак равно, давайте напишем код для 
семы процесса. Код для предыдущей схемы таков: 
bool isHungry = true; // 
можем установить это на false если не 
// 
голоден! 
if( isHungry == true ) // 
просто заходит внутрь { если isHungry (голоден) true 

cout << "
Готовит перекусить..." << endl; 
cout << "
Ест... " << endl; 
}  
cout << "
Сидит на диване..." << endl; 

Совет 
Это  первый  раз,  когда  мы  используем  переменную  bool!  Переменная  bool  либо 
содержит значение true, либо false.   
Во 
первых, 
мы 
начинаем 
с 
переменной 
bool 
названной 
isHungry 
(являетсяГолодным) и назначаем ей true.  
if( isHungry == true )
 
Оператор if действует как охранник для блока кода под ним. (Запомните, что блок 
кода это группа  заключённая между фигурных скобок { и }.) 
 
Вы можете читать код между { и }, если только isHungry == true 


55 | 
С т р а н и ц а
 
 
Код  внутри  фигурных  скобок  вы  сможете  получить  лишь,  если 
isHungry  ==  true
.  В 
противном  случае,  в  доступе  вам  будет  отказано  и  вы  будете  вынуждены 
пропустить весь этот блок кода. 
Совет 
Мы можем получить такой же эффект, просто написав следующую строку кода: 
if( isHungry ) // 
иди только сюда, если isHungry будет true  
Это может быть применено как альтернатива для следующего: 
if( isHungry == true ) 
Причина,  по  которой  программисты  могут  использовать  форму 
if(  isHungry  )

заключается в желании избежать возможности совершения ошибок. Если случайно 
написать 
if(  isHungry  =  true  )

isHungry
  будет  устанавливаться  на 
true
  каждый  раз при 
встрече  с  утверждением  с  if!  Во  избежание  такой  возможности,  вместо  этого  мы 
можем  просто  написать 
if(  isHungry  )
.  Альтернативно,  некоторые  (мудрые) 
программисты  используют  то,  что  называется  условия  Yoda,  чтобы  проверять 
утверждения  с  if: 
if(  true  ==  isHungry  )
.  Причина  писать  утверждение  с  if  таким 
образом,  в  том,  что  если  мы  случайно  напишем 
if(  true  =  isHungry  )
,  то  компилятор 
выявит ошибку, и мы узнаем где она. 
Попробуйте запустить этот сегмент кода, что бы увидеть, что я имею в виду: 
int x = 4, y = 5; 
cout << "Is x equal to y? C++ says: " << (x = y) << endl; //bad! 
// 
строка сверху переписывает значение в x на то, что было в y, 
// 
и так как строка сверху содержит присвоение x = y 
// 
нам следовало бы использовать (x == y) теперь. 
cout << "x = " << x << ", y = " << y << endl; 
Следующая строка показывает вывод предыдущей строки кода: 
Is x equal to y? C++ says: 5 
x = 5, y = 5 
Строка кода, которая имеет (x = y) переписывает предыдущее значение х (которое 
было 4) на значение y (которым является 5). И хотя мы пытались проверить, равны 
ли переменные х и y, в предыдущем утверждении, переменной х было назначено 
значение переменной y.  


Достарыңызбен бөлісу:
1   ...   68   69   70   71   72   73   74   75   ...   252




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

    Басты бет