小编Der*_*123的帖子

inift参数在swift 3中

这是我的代码:

func removeFromString( _ s: inout String, Character c:Character) -> Int {
    var s1 = s
    var nRemoved = 0

    while let ix = s1.characters.index(of: c) {
        s1.removeSubrange(ix...ix)
        nRemoved += 1

    }
    return nRemoved
}

var s2 = "everest"

let resb = removeFromString(&s2, Character: Character("e"))
Run Code Online (Sandbox Code Playgroud)

我的问题是这应该在使用参数后将s2更改为"vrst".但它根本没有改变它.我在做什么错了?或者我期待错误的输出?帮忙.谢谢.inoutsvar s2

ios swift swift3

12
推荐指数
1
解决办法
9736
查看次数

如何安装xCode命令行工具?如何安装Xcode 9 beta和xCode 8?

这些工具可用吗?我有一个苹果开发者帐户,我下载了Xcode 9 beta,我从https://developer.apple.com/download/获得.

Xcode 9开发人员工具出来了吗?

beta xcode xcode8

9
推荐指数
1
解决办法
2万
查看次数

在swift 3和向后兼容性中DISPATCH_TIME_NOW

根据@matt 使用的这个精彩答案dispatch_after,我在操场上尝试了代码,它工作正常(没有错误).但是,当我尝试执行向后兼容时DispatchTime.now(),iOS 10只有这样才可用:

func delay( _ delay: Double, closure: () -> ()){
    guard #available(iOS 10, *) else {
        dispatch_after(
            dispatch_time(
                DISPATCH_TIME_NOW,
                Int64(delay * Double(NSEC_PER_SEC))
            ),
            dispatch_get_main_queue(), closure)
        return
    }
    let when = DispatchTime.now() + delay
    DispatchQueue.main.after(when: when, execute: closure)
}
Run Code Online (Sandbox Code Playgroud)

编译器提供修复DISPATCH_TIME_NOWto Replace "DISPATCH_TIME_NOW" with "dispatch_time_t(DISPATCH_TIME_NOW)"并抛出错误说

无法将'Int'类型的值转换为预期的参数类型'dispatch_time_t'(又名'UInt64')

我尝试修复它,因为编译器提供但最终导致更多错误.我应该如何在这里使用向后兼容性?我在做什么错了?请帮助,谢谢!

ios swift swift3 xcode8

8
推荐指数
1
解决办法
4673
查看次数

在框架模块“ Bolts BFCancellationToken”中包含非模块化头

我刚刚下载了Parse示例项目,安装了LiveQueries pod,仅此而已。当我尝试构建它时,它弹出下面的两个错误。

在此处输入图片说明

xcode parsing swift

5
推荐指数
1
解决办法
3507
查看次数

标签 统计

swift ×3

ios ×2

swift3 ×2

xcode ×2

xcode8 ×2

beta ×1

parsing ×1