Unity Script與C#的差異

兩者之間除了語法上的差異外,在某些用法上也有不小的差距,如下表所示。

Unity Script C#
function override can override all function need to tag virtual before function
value type assignment transform.position.z += 1; transform.Translate (Vector3.forward * Time.deltaTime);
call static method can use instance can not use instance (must use classname)
switch case fall through goto case 'xxx';
type auto-transformation if(GameObject.Find("foo")) if(GameObject.Find("foo") != null)
== everything can compare to everything must be the same type or have extending relation
suffix var q : float = 0; float q = 0f;
list literal var arr : float[] = [1,2,3]; float[] arr = new float[] {1f, 2f, 3f};
new with or without all accept must with it
arr.length lowercase 'l' uppercase 'L'
parse parseInt Int.Parse
local variable x o
event & delegate x o
ref & out x o
struct x o

Ref: unity-dossier

results matching ""

    No results matching ""