swift基礎,xcode配置
在程式中新增debug的識別標示位。通過#巨集語法進行編譯時的**篩選。
配置方式
在塊的結束位置觸發,比如檢視當前函式的執行時間。
let _classnameforlog:
string
="\(
type
(of:
self))
"let _timeinterval =
date()
.timeintervalsince1970
print
(" -> \(_classnameforlog)
\(#function)")
defer
在程式中新增debug的識別標示位。通過類似#巨集語法進行編譯時的**篩選。func
logplus
(message_: t, filename_:
string
= #file, funcname_:
string
= #function, linenum_:
int= #line)
import os.signpost
struct
logutils
//任意swift類的方法起始處
let _uniqueid =
"[\(#file)
]\(type
(of:
self))
->\(#function)
"os_signpost
(.begin, log:
logutils
.functrackerlog, name: _uniqueid)
defer
防禦式程式設計,怎麼使用guard。沒有的時候做什麼處理,常用來判斷空或者轉型失敗。
//通過名稱獲取displayobject,在其身上直接獲取skspritenode例項物件
func
getspritenodebyname
(_ name_:
string)-
>
skspritenode
?guard
let _skspritenode = _child.sknode as
?skspritenode
else
return _skspritenode
}
swift5基礎語法
先從最基本的常量 變數說起 新建變數 新建變數的語法 var keyword 變數名 資料型別 變數值 swift會自動判斷型別,所以資料型別可以省略 var str hello,playground print str var greeting hello swift developers pri...
Swift 5 可選型別 Optionals
var name string?jack var age int?age 10var age1 int?age1 age1 10age1 確定可選性不為空的時候才可以強制解包if let num int 123 num 0else a b a 是可選項 b 是可選或者不是可選 a和b的儲存型別必須相...
swift5入門練手走起
言歸正傳 今年吸取了教訓,先把基礎打牢,系統的學習一下swift5的語法和開發技能,先寫個練手demo開始。第二步 熟悉swift5的語法 第三步 策劃一款小遊戲 石頭剪子布 自導自研 第四步 show me the code 1 新建乙個viewcontroller.swift類,用於控制main...