‫你好, 欢迎｡
‫在这堂课中,
‫我们将看到这些小引脚和它们的不同颜色, 并了解这些是不同的数据类型, 它们限制了我们可以插入的内容｡
‫因此, 让我们深入了解一下数据类型的含义｡
‫因此, 数据类型的一个相当可行的定义是, 它是如何在计算机内存中以二进制形式表示某些数据片段的｡
‫但它也可以是一种限制我们对这段数据做什么的方式｡
‫所以不一定总是关于不同的表现形式｡
‫你可以把它看作是数据的形状, 就像方钉不能放进圆孔一样｡
‫因此, 我们无法将错误类型的数据输入到错误类型的引脚｡
‫因此, 让我们来看看一些数据类型的示例｡
‫这是一个典型的例子｡
‫整数是一个整数, 所以它的值类似于223-14, 但不是1｡ 2.
‫这将是一个浮点数, 是浮点数的缩写｡
‫这些基本上都是有小数点的数字, 这些数字可以很大也可以很小,
‫但关键是它们不是整数｡
‫它们也可以是负面的｡
‫还有弦｡
‫我们以前遇到过字符串, 字符串只是程序员对文本片段的说法｡
‫它本质上是一种数据类型｡
‫这是一种在内存中存储文本片段的方式, 因此它们可以是任何你喜欢的东西｡
‫真的吗？
‫嗨, 鲍勃｡
‫你知道, 不管怎样, 所有这些东西, 所有这些在我屏幕上的文字片段都是字符串,
‫可能在电脑内存的某个地方｡
‫最后还有balls是booleans的缩写, 它们只有两个可能的值, 对或错？
‫这些数据类型很棒, 但你不能用这么简单的东西来表示整个游戏, 对吧？
‫如果你开始把它们组合成像物体一样的东西, 你就可以做到｡
‫一旦你将它们组合成一个对象, 它们就开始变得更有意义｡
‫你可以用一个整数来表示年龄, 你可以用一个浮点数来表示经验值, 诸如此类的东西｡
‫需要注意的一点是, 除了对象, 蓝图中还有一些叫做结构体的东西｡
‫别搞混了｡
‫太多的结构体基本上和一个对象是一样的, 除了它通常很小, 而且我们不使用引用, 我们只是传递它们,
‫并在内存中复制它们, 而不用担心它们, 因为它们太小了｡
‫正如我们所说的, 数据类型是数据的形状｡
‫让我们来看看一些对象结构体的例子｡
‫想象一下我们的冒险家｡
‫我们的冒险家可能看起来有点像这样｡
‫这是它的数据形状｡
‫它有一个整数来表示它的等级和一个浮点数来表示它的经验值｡
‫现在, 您可能有多个冒险家实例, 它们属于同一个冒险家类,
‫因此它们必须具有相同的数据形状, 但它们不必具有相同的数据内容｡
‫你可以看到这里第二个冒险家有100级和由于某种原因经验值负5｡
‫但不必介意, 您也可以通过拥有不同的对象类（如播放器）来拥有不同的类型｡
‫而这里你可以看到形状是不同的｡
‫这两个是冒险和球员是不兼容的类型, 但他们这样做, 你知道,
‫这些球员有不同的价值观存储在他们｡
‫他们有一个球员的名字, 他们可能有他们是否使用控制器, 因为他们的一些数据｡
‫现在让我们来看看以前见过的一些结构体｡
‫同样, 请记住, 结构体和对象除了大小不同之外, 或多或少是可以互换的｡
‫第一个我们见过很多次的是向量, 向量就是三个浮点数｡
‫这就是它是一个X, Y和Z浮点数, 可以用来表示位置｡
‫它也可以用来表示尺度, 或者我们在将脉冲输入到ADD脉冲节点时使用过｡
‫我们顺便看到的另一个东西是一个旋转器｡
‫注意这个旋转器也只有三个浮点数, 但这并不意味着这两种类型是兼容的｡
‫我们可以给予结构体取不同的名字, 这样我们就保存在不应该使用它们的情况下意外地使用它们｡
‫我们可以把这些放在一起, 创造一个更大的复合结构, 变换是场景中演员的位置,
‫旋转和缩放｡
‫你可以看到, 这是一个由其他结构体组成的结构体, 你可以随意嵌套这些结构体,
‫把结构体放在对象中, 等等.
‫事情会变得很复杂｡
‫让我们来看看一些我们过去见过的物体｡
‫我们已经看过了作为演员的物体｡
‫我们知道演员是一种对象｡
‫我们见过立方体的演员｡
‫这是另一种类型的对象｡
‫我们已经看到, 我们的投射物也是一种物体, 它是一个演员｡
‫我们已经看到了演员身上的组件, 也是对象的类型｡
‫静态组件就是其中的一个例子｡
‫我们已经有了所有这些, 这些都是由这些基本数据类型组成的｡
‫在本质上, 它们可能在过渡期间由更复杂的结构组成, 但这都是关于那些基本数据类型的｡
‫所以当我们去看这样一个图的时候, 我们可以通过颜色立刻看出这个脉冲是一个矢量,
‫比如说, 位置, 旋转和缩放, 这里只是三个浮点数｡
‫我们还可以看到, 这个红色的力度更改复选框是一个布尔值｡
‫这是一个是不是的答案｡
‫所以我们要开始了｡
‫要理解这些是限制我们可以插入什么的数据类型｡
‫总而言之, 我们看到的是数据类型是数据的形状,
‫对象只是数据和功能的集合, 正如我们之前所说的, 结构体是对象, 但通常只是小一点｡
‫这就是你需要知道的｡
‫我们下节课再见｡