2016-09-01 64 views
2

我從字面上從Swift的官方Realm文檔中複製和粘貼代碼 - 並且它不能編譯:Swift和Realm:無效使用'()'來調用非函數類型的值'模塊<Realm>'

https://realm.io/docs/swift/latest/#adding-objects

enter image description here

enter image description here 我使用的境界1.0.2

的文檔是真的本身相互矛盾的 - 有變化聲明境界:

let realm = RLMRealm.defaultRealm() 
let realm = Realm() 
let realm = try! Realm() 

Realm正在發生什麼?

Realm和RLMRealm有什麼區別? 上面的第一行會很好的編譯 - 但接下來的兩行不會。

+0

您是否添加了'import realm'? – sage444

+0

我有 - 這不是問題。試着拿這個代碼,看看它是否爲你編譯。 – etayluz

回答

3

我從字面上複製並從official Realm documentation for Swift粘貼代碼 - 它不會編譯:

在你的屏幕截圖不存在調用Realm類型的初始化所需要的括號中的代碼片段。我瀏覽了你鏈接到的文檔頁面,並且從我所看到的Realm初始值設定項的所有用法正確地找到了它們的父類。

的文檔是真的本身發生衝突 - 與境界的不同聲明:

我不知道你指的哪些文檔。我在Realm Swift documentation中看到的唯一形式是let realm = try! Realm(),這是與Realm Swift一起使用的正確形式。

RealmRLMRealm有什麼區別?

Realm框架提供Objective-C API,其中RLMRealm類表示Realm文件。 RealmSwift框架提供了Swift API,Realm類表示Realm文件。

上面的第一行將編譯得很好 - 但接下來的兩行不會。

這表明你正在使用從斯威夫特(import Realm)王國的Objective-C框架,而不是境界斯威夫特(import RealmSwift)。

+0

謝謝!如果你做了一個谷歌搜索「realm swift tutorial」,你會發現realm.io中的第一篇文章完全過時了,並且導致我走錯了路。請刪除或以其他方式更新這篇文章Realm人。 – etayluz

+0

我提出了與我們團隊更新舊博客帖子的問題。在我們能夠做到這一點之前,我們已經爲這些帖子添加了日期,以提供關於此類帖子新近性的一些想法。如果我的回答解決了您的問題,Stack Overflow禮儀表示您應該將其標記爲已接受。 – bdash

+0

我只是完全刪除博客帖子 - 沒有什麼好用的 - 如果我沒有看到它,這個問題將永遠不會發布。 – etayluz

相關問題