iOS製作framework時遇到的一個坑

第一次製作framework封裝項目裏的業務庫,然後就遇到了一個容易被自己忽視的坑

比如我的framework裏面有這樣一個類供外部調用:

public class Hello {
    public var message = ""
}

 我將framework打包,然後新建一個Test Tartget。在Target裏去import這個framework並想要創建這個類,發現編譯器報錯:

訪問了一個internal的變量,這是不被允許的

然後我就百思不得其解,爲什麼可以直接訪問這個對象的message字段,並且我的framework也是設置的public,怎麼就internal了。最後,我發現了一個被自己忽視的地方,class的構造方法是默認的。而且通常開發中都被我忽視了,所以就發生了這種問題。附上正確的代碼:

public class Hello {
    public var message = ""

    public init() {}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章