我的編程環境是XCode 11.5。
今天在測試秒錶代碼的時候偶然發現秒錶計數會是負值,由此進行了下面的一番探索。
爲了精確,秒錶走過的秒數用Decimal類型:
@Published var elapsedSeconds_exactly: Decimal = 0.0
在實際使用時需要將其轉換爲整數類型,由於Decimal沒有直接的方法轉換爲整數,所以我用的是如下的迂迴戰術:
NSDecimalNumber(decimal: elapsedSeconds_exactly).intValue
前面提到秒錶會顯示負數的秒數,所以馬上下斷點,發現elapsedSeconds_exactly的值如下(正數86.457302045822143488):
(lldb)