如何转换UnsafeMutablePointer <unsafemutablepointer <int8>?&gt;到UnsafeMutablePointer <unsafemutablepointer <int8>&gt;!

时间:2017-09-30 06:14:02

标签: swift4 uiapplication

我正在使用swift 4.0来重写我的iOS应用程序的main.swift。 这是我的main.swift:

UIApplicationMain(CommandLine.argc,
              CommandLine.unsafeArgv
              NSStringFromClass(MyAPP.self),
              NSStringFromClass(AppDelegate.self))

这里有编译错误:

Cannot convert value of type 'UnsafeMutablePointer<UnsafeMutablePointer<Int8>?>' to expected argument type 'UnsafeMutablePointer<UnsafeMutablePointer<Int8>>!'

AnyOne知道如何将UnsafeMutablePointer<UnsafeMutablePointer<Int8>?>转换为UnsafeMutablePointer<UnsafeMutablePointer<Int8>>!吗?

2 个答案:

答案 0 :(得分:0)

UIApplicationMain(
    CommandLine.argc,
    UnsafeMutablePointer(CommandLine.unsafeArgv),
    NSStringFromClass(MyAPP.self),
    NSStringFromClass(AppDelegate.self)
)

答案 1 :(得分:-2)

请检查:

UIApplicationMain(  
    CommandLine.argc,  
    UnsafeMutableRawPointer(CommandLine.unsafeArgv)  
        .bindMemory(  
            to: UnsafeMutablePointer<Int8>.self,  
            capacity: Int(CommandLine.argc)
        ),  
    NSStringFromClass(MyAPP.self),  
    NSStringFromClass(AppDelegate.self)  
)  
相关问题