如何開啟CC字幕?
本篇文章要介紹規則(Conventions)和語法,程式語法是一種有結構性的語言,加上一些必要的規則就可以閱讀並且撰寫程式。
舉例來說,點符號運算子(dot operator)。
點符號運算子輸入時為英文的句號 ".",如下面程式碼看到的,它在兩個單字之間。
本篇文章要介紹規則(Conventions)和語法,程式語法是一種有結構性的語言,加上一些必要的規則就可以閱讀並且撰寫程式。
舉例來說,點符號運算子(dot operator)。
點符號運算子輸入時為英文的句號 ".",如下面程式碼看到的,它在兩個單字之間。
using UnityEngine;
public class BasicSyntax : MonoBehaviour
{
void Start ()
{
Debug.Log(transform.position.x);
}
}
撰寫方式就像寫地址一樣,假設把Debug當作是國家,打上 . 後接著Log就是在Debug之下的城市。再以transform為例,transform是國家,position是城市,而x就是position之下的某個區。
簡單來說,點符號運算子是用來分割Unity內的複合功能,讓該發者可以依階層尋找需要的變數或函式,接著看以下程式碼。
using UnityEngine;
public class BasicSyntax : MonoBehaviour
{
void Start ()
{
Debug.Log(transform.position);
Debug.Log(transform.rotation);
Debug.Log(transform.localScale);
}
}
可以看到在transform之下分別有,position、rotation和localScale,也就是位置、旋轉和比例,透過transform後的 . 選擇。下一個規則是分號 ;。
分號通常會接在一句程式碼結束的位置,但不一定所有的程式碼結束都會接上分號,舉例來說。
using UnityEngine; public class BasicSyntax : MonoBehaviour { void Start () { Debug.Log(transform.position.x); if (transform.position.y <= 5f) { Debug.Log("I'm about to hit the ground!"); } } }類別的開始 { 與結束 } ,函式或條件判斷式if的開始與結束等等,當遇到 {} 的地方分號都是不需要的。
接下來是縮排,縮排雖然不是程式碼的規則之一,但可以讓你的程式碼漂亮而且清楚,讓自己或其他人容易閱讀程式碼,來看一段沒有縮排的程式碼。(全選程式碼後,按下shift+tab可以將縮排往左移)
using UnityEngine; public class BasicSyntax : MonoBehaviour { void Start () { Debug.Log(transform.position.x); if (transform.position.y <= 5f) { Debug.Log("I'm about to hit the ground!"); } } }首先這段程式碼最外層為標註黃色的部分,而在類別BasicSyntax從第一個{開始,到最後一個}結束,而BasicSyntax中的內容就需要縮排一次,全選當中的內容按下tab。
using UnityEngine;
public class BasicSyntax : MonoBehaviour
{
void Start ()
{
Debug.Log(transform.position.x);
if (transform.position.y <= 5f)
{
Debug.Log("I'm about to hit the ground!");
}
}
}
縮排完後會像這樣,接下來依上面的規則,對Start函式內程式碼做一次縮排,做完Start函式內的縮排,再對if條件式內做縮排。using UnityEngine; public class BasicSyntax : MonoBehaviour { void Start () { Debug.Log(transform.position.x); if (transform.position.y <= 5f) { Debug.Log("I'm about to hit the ground!"); } } }這樣縮排就完成了,可以將程式碼依階層劃分,函式或條件式的開始結束也容易查看。
編譯器只要按下換行,通常會有自動縮排的功能,但如果有縮排錯誤,按下tab一次就是往右縮排一次。
最後是註解,輸入是打//後接上一行要註解文字,或是在/**/中輸入多行的註解文字。
using UnityEngine; public class BasicSyntax : MonoBehaviour { void Start () { //print the x position Debug.Log(transform.position.x); /* line 1 line 2 */ if (transform.position.y <= 5f) { Debug.Log("I'm about to hit the ground!"); } } }註解中的文字在程式編譯時,會被跳過不被編譯,所以還有以下用法。
using UnityEngine; public class BasicSyntax : MonoBehaviour { void Start () { //print the x position Debug.Log(transform.position.x); /* if (transform.position.y <= 5f) { Debug.Log("I'm about to hit the ground!"); } */ } }if判斷式被包含在註解當中,這段程式碼為無效的狀態,編譯後這段程式碼不會執行。
以上是規則和語法的說明。
這次就到這裡。
沒有留言:
張貼留言