2014-12-04 159 views
2

我有一个xcode 6 swift项目,我正在尝试使用C++。在我左侧的项目中,我点击了“新文件”,并选择了空的C++文件。然后我点击是,xcode生成Bridging-Header.h文件。在xcode 6中找不到'string'文件

在我的新的.cpp文件中,我有#include <string>。我试图编译该文件,并且一切正常编译。后来我意识到我忘了将.cpp文件包含在bridging-header.h中,因为我的swift文件无法访问我的.cpp文件中的函数。当我将在桥接头文件的#import "cplusplusfile.cpp",我得到这个错误在这条线:

#include <string>   (!)'String' file not found 

我的目标是让用户在的UITextField输入一个字符串,并从我的雨燕文件发送字符串到函数在我的C++文件中,然后我可以使用C++将该字符串写入文件(我不知道如何在swift中读/写文件,并且找不到太多内容)。

有人会知道可能的解决方案吗?我在网上查找和其他问题。其中一个解决方案是将我的cplusplusfile.cpp更改为cplusplusfile.mm。遗憾的是它并没有帮助:(

回答

0

我会回答完全不同的东西,因为我知道你会在错误的方向,用C++只是写一个字符串文件手忙脚乱,要使用NSString并直接写入该字符串到一个文件中,迅速可以使用的方法

func writeToFile(_ path: String, 
     atomically useAuxiliaryFile: Bool, 
     encoding enc: UInt, 
      error error: NSErrorPointer) -> Bool 

,并给它一个字符串,它是文件名,并写出得到字符串通过直接从您的UITextField b中读取它如果使用myTextField.text,它应该立即写入文件。

祝你好运快速学习! :)

也是这里的class reference for NSString

+0

这,+1。这个问题是令人难以置信的,如果你要问反正,这是非常好的,不要误解我的意思,至少要问正确的问题解决问题! – JustSid 2014-12-04 21:31:40

+0

@MostafaTorbjørnBerg谢谢!我不知道有关于如何在swift中读写文件的文档,这就是为什么我要用C++的原因,因为我对它更熟悉。 – MR04 2014-12-04 21:40:50

+0

你是否有任何问题你知道如何获得你的项目的目录路径吗? – MR04 2014-12-04 22:57:39

-1

使用以下代替:

#import <string.h> 
+1

我只是去尝试,当我键入:无效PRINTSTRING(字符串文本); 它说未知的typename'字符串':( – MR04 2014-12-04 21:26:52