彼得潘的 Swift iOS App 開發問題解答集
阿新 • • 發佈:2018-12-09
Swift 程式初學者常見的程式問題 — 解答篇
1 大小寫打錯
var song = "帶你去旅行"
print(Song)
Use of unresolved identifier 'Song'
s 要小寫,不是大寫。
var song = "帶你去旅行"
print(song)
2 呼叫 function 時,不需要加 func。
func 帶你去旅行() {
print("我想要帶你去浪漫的土耳其,然後一起去東京和巴黎")
}
func 帶你去旅行()
Invalid redeclaration of '帶你去旅行()'
只有定義 function 時要加 func,呼叫時只要 function 的名字加 ( ),所以應該改成
func 帶你去旅行() {
print("我想要帶你去浪漫的土耳其,然後一起去東京和巴黎")
}
帶你去旅行()
3 { } 沒有成對。
func 帶你去旅行() {
print("我想要帶你去浪漫的土耳其,然後一起去東京和巴黎")
Expected '}' at end of brace statement
就像彼得潘一定要搭配 wendy,{ 也一定要搭配 }。剛剛的例子少了 },正確的程式如下
func 帶你去旅行() {
print("我想要帶你去浪漫的土耳其,然後一起去東京和巴黎")
}
可用以下兩個方法檢查 { } 是否成對。
方法1:
在 { 上雙擊,如果順利找到心愛的另一半 },將如下圖所示,整個 { } 區塊被選取。
找不到另一半的可憐例子。
方法2:
在 func, if 等關鍵字上按住 cmd 鍵後點選,將如下圖所示,整個 { } 區塊被選取。
找不到另一半的可憐例子。
4 呼叫 function 時要加 ( )
func 最想留住的幸運() {
print("原來彼得潘是我最想留住的幸運")
print("原來我們和愛情曾經靠得那麼近")
}
最想留住的幸運
呼叫 function 時要加 ( ),才能順利執行 function 裡的程式,正確版本如下
func 最想留住的幸運() {
print("原來彼得潘是 我最想留住的幸運")
}
最想留住的幸運()
5 只有定義 function,忘了呼叫 function,不會執行 function 裡的程式。
func 最想留住的幸運() {
print("原來彼得潘是我最想留住的幸運")
}
想要印出訊息原來彼得潘是我最想留住的幸運,但因為沒有呼叫 function,所以不會執行 function 裡的程式,正確版本如下
func 最想留住的幸運() {
print("原來彼得潘是 我最想留住的幸運")
}
最想留住的幸運()
6 常數要用 let 宣告產生後才能存取。(變數要用 var 宣告產生後才能存取)
name = "Peter"
Use of unresolved identifier 'name'
正確版本如下
let name = "Peter"
7 字串要加 “ ”
var name = 彼得潘
Use of unresolved identifier '彼得潘'
正確版本如下
var name = "彼得潘"
8 定義 function 要加 { }
func 帶你去旅行()
Expected '{' in body of function declaration
正確版本如下
func 帶你去旅行() {
print("我想要帶你去浪漫的土耳其,然後一起去東京和巴黎")
}
9 比較相等要用兩個等於
var number = 10
if number = 100 {
print("100分")
}
Use of '=' in a boolean context, did you mean '=='?
正確版本如下
var number = 10
if number == 100 {
print("100分")
}
10 名字不能有空白
func listen to music() {
print("聽音樂")}
Found an unexpected second identifier in function declaration
名字不能有空白,因此 function,變數,常數,型別的名字都不能有空白。
正確版本如下
func listenToMusic() {
print("聽音樂")
}
11
func addNumber(number1: Int, number2: Int) {
return number1 + number2
}
Unexpected non-void return value in void function
function 裡回傳整數,但 function 沒有加上 -> Int。
正確版本如下
func addNumber(number1: Int, number2: Int) -> Int {
return number1 + number2
}