如何克服CString错误

时间:2015-01-12 11:59:50

标签: objective-c swift

如何克服此错误

  func selectFunc(){
    var selectQuery="select * from EmployeInfo"
    var cSql:CString = selectQuery.bridgeToObjectiveC().cStringUsingEncoding(NSUTF8StringEncoding)
    var result:CInt=0

    var stmt:COpaquePointer = nil
    result = sqlite3_prepare_v2(appDelegate.database, cSql, -1, &stmt, nil);
    if result != SQLITE_OK

使用未声明的CString.how错误来克服此错误

1 个答案:

答案 0 :(得分:2)

在较旧的Swift版本中(在Xcode 6 beta 6之前),Swift String已明确转换 当传递给一个带有const char *参数的C函数时,就像你的代码一样。

这不再是必要的。 <{1}}类型和CString方法不再存在。

当前的Swift编译器进行转换 自动(比较String value to UnsafePointer<UInt8> function parameter behavior)你可以写

bridgeToObjectiveC()