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



Pdf көрінісі
бет61/252
Дата06.01.2022
өлшемі12,25 Mb.
#11940
1   ...   57   58   59   60   61   62   63   64   ...   252
Подсказка 
Не  путайте  структуру  Vector  на  предыдущем  изображении  с  std:  :vector  от  STL. 
Объект Vector сверху предназначен для представления трёхмерного вектора, в то 
время как тип std: :vector от STL представляет размерное собрание значений.  
Вот пара заметок о предыдущем коде
Во  первых,  ещё  до  того  как  мы  применим  наш  объектный  тип  Vector,  нам  нужно 
определить его. С++ не идёт со встроенными типами для математических векторов 
(а поддерживает только скалярные величины и думалось, что этого хватит!). Итак, 
С++  позволяет  вам  строить  ваши  собственные  объектные  конструкции,  чтобы 
сделать вашу жизнь легче. Сначала у нас есть следующее определение: 
struct Vector       // 
НАЧАЛО ОПРЕДЕЛЕНИЯ ОБЪЕКТА  

float x, y, z; // x, y 
и z положения, все типа float 
}; 
                              // КОНЕЦ ОПРЕДЕЛЕНИЯ  ОБЪЕКТА Vector  
Это  сообщает  компьютеру,  чем  является  вектор  (три  значения  плавающего  типа, 
которые  объявлены  и  будут  расположены  друг  за  другом в  памяти).  То  как  будет 
выглядеть Vector в памяти, показано на предыдущем изображении.  
Далее  мы  используем  определение  нашего  объекта  Vector,  чтобы  создать 
экземпляр от Vector названный v:  
Vector v; // 
Создаёт экземпляр от Vector названный v
 
Определение 
struct  Vector 
на  самом  деле
   
не  создаёт  объект  вектор.
 
Вы  можете 
выполнить: 
Vector.x  =  1
.  “О  каком  экземпляре  объекта  вы  говорите?”  спросит 


44 | 
С т р а н и ц а
 
 
компилятор  С++.  Сначала  вам  надо  создать  экземпляр  Vector,  такой  как                                                                                                               
Vector v1. Затем вы можете делать назначение экземпляру v1, такое как v1x = 0. 
Затем мы используем этот экземпляр, чтобы записать значения в v: 
v.x=20, v.y=30, v.z=40; // assign some values 
Подсказка 
Мы  использовали  запятые  в  предыдущем  коде,  чтобы  присвоить  значения 
нескольким  переменным  на  одной  строке.  Это  нормально  в  С++.  Конечно  вы 
можете  сделать  для  каждой  переменной  свою  строку,  но  и  способ  показанный 
здесь, тоже хорош.  
Так v будет выглядеть как на предыдущем скриншоте. Затем мы выводим их: 
cout << "A 3-space vector at " << v.x << ", " << v.y << ", " << v.z << endl; 
Здесь, на обеих строках кода, мы получаем доступ к индивидуальным элементам 
данных  внутри  объекта  просто  используя  точку  (.).  v.x  ссылается  к  элементу  x 
внутри  объекта.  В  каждом  объекте  Vector  также  будет  три  значения  плавающего 
типа: одно из которых названо x, другое y и ещё одно z.  


Достарыңызбен бөлісу:
1   ...   57   58   59   60   61   62   63   64   ...   252




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

    Басты бет