İsteğe bağlıların nasıl çalıştığını anlıyorum, ancak bu bir döngü için beni fırlatıyor. Ben num
adlı bir değişken var ve bunu artırmak istediğiniz, bu yüzden aşağıdaki yaptı: Swift artışı Int! çalışmıyor
var num:Int! = 0
num++ //ERROR - Unary operator ++ cannot be applied to an operand of type Int!
Ama
tedavi olması gerekiyordu rağmen Swift bana bir kuvvetInt
açılmamış artırır izin vermez Bazı sebeplerden dolayı, sahnelerin arkasında nil yeteneğine sahip düzenli bir
Int
gibi. Bu yüzden aşağıdaki çalıştı ve işe yaradı:
o bana verdi hata mesajına göre Bununla
var num:Int! = 0
num = num + 1 //NO ERROR
, ben artım operatörü olmak için aşağıdaki çalıştı hala çalışır:
var num:Int! = 0
num!++ //NO ERROR
Benim sorum Kodun ikinci ve üçüncü bitleri neden ilk kod bitini kırıyor? Ayrıca, num
bir Int!
olduğundan, düzenli bir Int
gibi davranamayabilir miyim? Son olarak, bir Int!
'un düzenli bir Int
gibi ele alınması gerektiği için, üçüncü örnekte nasıl paketleyemiyorum? Teşekkürler.
Hemen "0" olarak başlattığınız için, isteğe bağlı olmak zorunda değil. – Jack
başlatıcılara ihtiyaç duymadan "var num = 0" değerine sahip olabilirsiniz. Bilgi için teşekkürler, fakat ne olursa olsun neden yukarıdaki kodum garip oluyor? – Aderis
@JackWu: İsteğe bağlı yapmak, bunun için bir nedeniniz varsa daha sonra sıfırlayabileceğiniz anlamına gelir. – gnasher729