Unity3d脚本(unity | C#脚本基础入门)
序
Unity 3D 脚本用来界定用户在游戏中的行为,是游戏 *** 中不可或缺的一部分,它能实现各个文本的数据交互并监控游戏运行状态。Unity 3D 主要支持 3 种语言:C#、UnityScript(也就是 JavaScript for Unity)以及 Boo。但是选择 UnityScript和Boo 作为开发语言的使用者非常少,而 Unity 公司还需要投入大量的资源来支持它,这显然非常浪费。所以在 Unity 5.0 后,Unity 公司放弃对 Boo 的技术支持。大多数开发人员更倾向于使用的编程语言是C#。C#被全球数百万开发人员用于应用程序,Web和游戏开发,并且有大量的信息和教程可以帮助你。
主体
VS中文件的组成
Visual Studio是Windows平台应用程序更流行的集成开发环境。一套基本完整的开发工具,其中包含了整个软件生命周期所需的大部分工具,如UML工具、代码控制工具、集成开发环境(IDE)等。编写的目标代码适用于微软支持的所有平台。
结尾的文件。cs是类文件。
的结束。sln是解决方案的文件。
。csproj项目文件,里面包含了这个项目的信息,可以双击运行。
类文件中的组合
上图中的代码输出:Hello World!
使用:在引用名称之间空
命名空间:在项目名称之间空
类别:类别名称
Main:主函数是程序的主入口和执行范围。每个C#程序都必须有一个包含main函数的类。
类型
类型是一个模板。
# C程序是一组类型声明。学习C#意味着学习如何创建和使用类型。我们可以把类型看作是用来创建数据结构的模板。模板本身不是数据结构,但是它详细描述了模板构造的对象的特征。
类型由以下元素定义:
名字
用于保存数据成员的数据结构。
一些行为和约束
实例化类型
从类型模板创建实际对象称为实例化类型。
通过实例化类型面创建的对象称为类型的对象或类型的实例。
在C#程序中,每个数据项都是某种类型的实例。这些类型可以是语言本身的,由BCL或其他库提供,或者由程序员定义。
预定义类型
# C提供了16种预定义类型,包括13种简单类型和3种非简单类型。所以预定义类型的名字都是由小写字母组成的。
预定义的简单类型包括以下3种类型:
11种数字类型
不同长度的有符号和无符号整数类型: *** yte、byte、short、ushort、int、uint、long
浮点型和双精度型
高精度小数类型,可以精确表示分数,常用于货币计算。
Unicode字符类型char
布尔类型bool,表示布尔值,必须为真或假。
3种非简单类型:
字符串,它是Unicode字符的数组;
对象,所有其他类型的基类;
动态,在使用用动态语言编写的程序集时使用。
用户定义的类型
除了C#提供的16种预定义类型外,还有6种类型可以由用户自己创建:
类型(类别)
类型(结构)
数组的类型(数组)
枚举类型(枚举)
委托类型(委托)
接口类型(接口)
救援
堆叠堆
当一个程序运行时,它的数据必须存储在内存中。数据项需要多少内存、存储在哪里以及如何存储都取决于它的类型。正在运行的程序使用两个内存区域来存储数据:堆栈和堆。
棚
栈是一个内存数组,一个先进后出的数据结构。
堆栈存储以下类型的数据:
某些类型变量的值
程序的当前执行环境
传递给该 *** 的参数
作为一个程序员,了解堆栈的基本功能,可以更好的理解程序运行时在做什么,更好的学习C#。
堆栈的特征
数据只能从栈顶插入和删除。
将数据放在栈顶称为推送。
从栈顶删除数据称为pop。
堆叠和卸载
大量
堆(Heap)是一个内存区域,其中可以分配大量内存来存储某种类型的数据对象。与堆栈不同,堆栈中的内存可以按任何顺序存储或移除。
内存堆
和引用类型。
类型分为值类型和引用类型两种。这两种类型的对象以不同的方式存储在内存中。
值类型只需要一个单独的内存来存储实际数据。
引用需要两部分内存:之一部分存储实际数据,位于堆中;第二段是对数据在堆中存储位置的引用。
值类型的数据存储在堆栈中,引用类型的实际数据存储在堆栈中,引用(指针)存储在堆栈中。
非数据成员的存储
值类型和引用类型的分类
可变的
变量是程序执行时存储在内存中的数据。
变量必须在使用前声明。变量声明定义变量并完成两件事。
命名变量并将其与类型相关联;
为它开辟了一个空的内存空间;
变量声明
//声明名称为var1的变量intvar1;//类型值//变量初使化语句intvar2=17;//初使值//多变量声明intvar3=7,var4,var5=3;//有的被初使化,有的未被初使化doublevar6,var7=6.52;
# C中的四个变量:
局部变量:保存 *** 范围内的临时数据,并且不是类的成员。
字段:保存与类型或类型实例相关的数据,并且是类的成员。
参数:用于将数据从一个 *** 传递到另一个 *** 的临时变量,不是类的成员。
元素:同类数据项的有序 *** 的成员,可以是局部变量或类型的成员。