我試圖實現一個我在github上找到的項目。Swift編譯器錯誤'iostream'找不到
https://github.com/hossamghareeb/Facebook-POP-Tutorial
當我執行h和.m文件我已經得到了這是說的XCode找不到我「的iostream」文件的錯誤。
我在SWIFT工作,使用橋接頭來使用框架。當我嘗試構建它的原始項目時,它總是失敗。
如何添加我的iostream文件?
提前致謝!
我試圖實現一個我在github上找到的項目。Swift編譯器錯誤'iostream'找不到
https://github.com/hossamghareeb/Facebook-POP-Tutorial
當我執行h和.m文件我已經得到了這是說的XCode找不到我「的iostream」文件的錯誤。
我在SWIFT工作,使用橋接頭來使用框架。當我嘗試構建它的原始項目時,它總是失敗。
如何添加我的iostream文件?
提前致謝!
Swift橋接不支持Objective C++文件。這意味着任何使用或暴露C++實體的頭文件(如std::vector
; std::iostream
)都不能添加到橋頭。
的POP橋接頭包含:
#import "POP.h"
你真的應該只#import
該文件在您自己的橋接報頭,而不是試圖#import
所有.h
文件。
如果您需要使用一些未在Objective C或純C頭文件中公開的.mm
文件中定義的API,那麼您必須製作自己的頭文件(可能爲後端實現你已經暴露的)。
您可以在Swift使用的庫中使用.mm
文件的原因是因爲所有的swift使用都是這些文件的接口 - 即.h
文件,只要這些文件使用純C或Objective C ,那麼你可以使用在.mm
文件中實現的代碼。目標C++編譯器編譯.mm
文件(clang++
)
謝謝,經過大量的詛咒和DuckDuckGoing你的答案是讓我明白爲什麼我不能在我的情況下使用Objective-C++頭(因爲他們導入C++頭)。 – 2016-08-16 06:42:42
這些文件是Objective C++,而不是Objective C。我不認爲快速橋接可以與Objective C++頭文件一起使用。 – Petesh 2015-04-01 15:42:17
有沒有可能導入這些客觀的C++文件? – 2015-04-01 20:35:54