[英]Swift Variable used within its own initial value
其他答案是正確的。 我想在這里添加一些建議,因為我在你的代碼中看到了許多非常難看的東西:[
因此,請將您的類命名為Entity
而不是entity
為什么Entity
擴展了NSObject
? 你有正當理由這樣做嗎?
我在你的代碼中看到很多public
。 為什么? 你在創建一個圖書館嗎? 因為可能沒有必要public
所有這些東西。
如果Entity
只是一堆數據的容器,那么它應該是一個struct
,而不是一個class
。 你會獲得更好的表現。
我經常看到使用String
類型的代碼代替許多其他類型(例如Int
, NSDate
, Bool
,...)。 為什么? 每次你需要執行一些與真實類型嚴格相關的操作/檢查時(例如添加數字,比較日期等等),這極難處理這個值。
created
時空字符串是什么意思? 如果您使用空String
來表示缺少值,則應使用nil
(當然,該屬性是可選類型)。
希望這可以幫助 :)
你不能給變量一個與類型相同的名稱:編譯器變得混亂,它認為你對entry
的引用是指entry
新變量,因此警告。
最好的解決方案是使用CamelCase名稱作為變量的類型和llamaCase名稱,如Apple在“The Swift Programming Language”中所推薦的那樣。 例如:
public var entry = Entry()
和
public class Entry: NSObject {
(另請注意,您無需顯式聲明entry
變量的類型,因為它很容易從其值中推斷出來。)
您只是碰撞了條目變量引用的名稱和條目類。 只需重命名條目類:例如,將其設為“Entry”。
更改實例的名稱,因為您不能使用與該類相同的名稱。 此外,您應該將類的名稱更改為大寫,以便更容易區分類名和實例
var levelEntry = Entry()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.