這篇內容,將會講解什麼是表達式,什麼是陳述式。有了這些概念,各位會更容易理解,要如何設計程式碼。
本篇教學所使用的系統是Windows 10,如果有按鍵相關的說明,會用Windows的系統來解釋。如果你用的是Mac系統,再麻煩自行換成相對應的按鍵。
在學習本篇內容之前,最好具備以下的前置知識,以免看不懂這篇教學的內容。
Expression的常見翻譯為表達式,除此之外,有些還會翻譯成表示式、運算式。
表達式的定義為:「任何會回傳值的程式碼片段,都算是表達式。」
如果要從GameMaker中舉例,那麼會回傳數值的函式,以及各種運算子的使用,都可以算是表達式的一種。
另外,單純一行的「變數(Variable)」、「實數(Real Number)」、「字串(String)」、「布林值(Boolean)」等等,也算表達式。
雖然上面這種表達式,在GameMaker中,是無法執行的(因為這對遊戲製作沒有意義),但在其他的程式語言中,這種表達式,是會回傳數值的。
以下會列出,表達式的各種例子(也包含GameMaker無法運行的):
a = 1 ; //賦值
a = keyboard_check_pressed(vk_left) ; //用函式來賦值
a ++ ; //遞增
keyboard_check_pressed(vk_left) ; //呼叫會回傳數值的函式,雖然可以運行,但沒有意義
1 + 1 ; //沒有賦值的算術運算,這在GameMaker中無法運行
2 > 1 ; //沒有賦值的比較運算,這在GameMaker中無法運行
(a > 1) && (b == 1) ; //沒有賦值的邏輯運算,這在GameMaker中無法運行
c ; //只放變數,這在GameMaker中無法運行
5 ; //只放實數,這在GameMaker中無法運行
"Hi" ; //只放字串,這在GameMaker中無法運行
true ; //只放布林值,這在GameMaker中無法運行
陳述式(Statement)會執行一些程式碼,但是不會回傳數值或結果。
如果從GameMaker中舉例,那麼定義函式,或是呼叫沒有回傳數值的函式,這些動作就屬於陳述式。
除此之外,像是「if else」這類的語法,也會被歸類成陳述式。
備註:if else的「整包程式碼」,會被歸類成陳述式,但裡面的程式碼,依然可以放置表達式。
所以知道這些名詞要幹麼?其實只是為了讓各位,能夠看懂說明書而已。
大多數的教學,都只會簡單的帶過,但是,這些名詞,卻會常常出現在說明書當中。
像是「if else」的說明書中,他是長這個樣子:
if (<expression>)
{
<statement> ;
<statement> ;
...
}
如果你對這些詞沒有概念,那麼要研究說明書的時候,就會感到非常的頭痛。
當然,我所撰寫的教學,會盡量避免使用,這種惱人的名詞,但是,為了安全起見,最好還是了解一下,這兩種名詞的意義是什麼。
也許在跟別人合作的時候,這些奇怪的詞彙,能有機會派上用場呢。
🔔如果內容對你有幫助,可以按個喜歡,這樣就能讓更多人,接觸到這些棒棒的內容🔔
✨祝各位也能開心的做出好遊戲✨