草庐IT

explicit-conversion

全部标签

ios - 圆弧 : "Pointer to non-const type ' id' with no explicit ownership"

我正在升级一个iOS4项目以将其与带有sdk5的ARC一起使用。所以我想使用自动重构方法将代码转换为使用ARC。不幸的是它不起作用。我收到很多错误..for(id*childinchildObjectArray){[childremoveParentGroupReferences];}这给了我以下错误输出:Pointertonon-consttype'id'withnoexplicitownership有什么帮助吗?我需要改变什么?感谢您的帮助.. 最佳答案 将id*更改为id。id已定义为对象指针。

objective-c - 自动引用计数 : Pointer to non-const type 'NSError *' with no explicit ownership

在更新我的一些代码以与iOS5SDK兼容时,我试图通过在Xcode中使用“转换为Objective-CARC”来重构我的代码,但收到错误消息。错误发生在我的.h文件中的实例变量上。NSError**_error;错误显示“指向没有明确所有权的非常量类型‘NSError*’的指针。”我该如何解决这个问题? 最佳答案 您可以使用TransitioningtoARCReleaseNotes中描述的生命周期限定符之一。对于NSError**你会使用__autoreleasing所以Nikolai提供的例子看起来像这样@interfaceFo

objective-c - 自动引用计数 : Pointer to non-const type 'NSError *' with no explicit ownership

在更新我的一些代码以与iOS5SDK兼容时,我试图通过在Xcode中使用“转换为Objective-CARC”来重构我的代码,但收到错误消息。错误发生在我的.h文件中的实例变量上。NSError**_error;错误显示“指向没有明确所有权的非常量类型‘NSError*’的指针。”我该如何解决这个问题? 最佳答案 您可以使用TransitioningtoARCReleaseNotes中描述的生命周期限定符之一。对于NSError**你会使用__autoreleasing所以Nikolai提供的例子看起来像这样@interfaceFo

Manifest merger failed : Apps targeting Android 12 and higher are required to specify an explicit v

新建项目运行出现以下异常 Manifestmergerfailed:AppstargetingAndroid12andhigherarerequiredtospecifyanexplicitvaluefor`android:exported`whenthecorrespondingcomponenthasanintentfilterdefined.Seehttps://developer.android.com/guide/topics/manifest/activity-element#exportedfordetails.按照提示要去AndroidManifest.xml文件中给activ

Using insecure protocols with repositories, without explicit opt-in, is unsupported.解决方案

出现此错误的原因是因为使用了http链接,gradle出于安全考虑必须使用https链接第一种解决方案是可以加一行参数允许http链接maven{ allowInsecureProtocol=true//这一行url'xxxxxxx'}第二种方法是将url改为https://xxxxxx常规出现这种问题的原因就这两种,还有一种配置文件会一层一层引用android/app/build.gradle-> flutter-tools/flutter.gradle->C:/Users/XXX/.gradle/init.gradle其中某一个文件的gradle里出现了http,将其用上面两种问题修正即

swift - 为什么是!在 Swift 中调用 'implicitly' 而不是 'explicitly' 展开可选?

!的名称总是让我感到困惑:它被称为“隐式解包可选”。然而,它隐含了什么?隐含的意思是“隐含但没有明确表达”。但是,加个!不就明明白白表达了它的目的吗?不添加!就可以明确说明我们要完成的任务吗? 最佳答案 在Swift中,尾随感叹号(!)有两种不同的使用方式。一个叫ForcedUnwrapping.这是当你有一个定义为可选的变量并且你想基本上断言该值不是nil以便你可以像它不是可选的那样使用它:varoptionalName:String?="World"ifoptionalName!=nil{sayHelloTo(optionalS

swift - 为什么是!在 Swift 中调用 'implicitly' 而不是 'explicitly' 展开可选?

!的名称总是让我感到困惑:它被称为“隐式解包可选”。然而,它隐含了什么?隐含的意思是“隐含但没有明确表达”。但是,加个!不就明明白白表达了它的目的吗?不添加!就可以明确说明我们要完成的任务吗? 最佳答案 在Swift中,尾随感叹号(!)有两种不同的使用方式。一个叫ForcedUnwrapping.这是当你有一个定义为可选的变量并且你想基本上断言该值不是nil以便你可以像它不是可选的那样使用它:varoptionalName:String?="World"ifoptionalName!=nil{sayHelloTo(optionalS

swift 2 : Invalid conversion from throwing function of type to non-throwing function

我有一些(丑陋的)自写代码移植到Swift2并在lambda函数中收到此错误消息:我不明白的是,我用错误抛出函数JSONObjectWithData处理了整个代码并捕获了错误。我在代码中什么也没扔。尽管如此,编译器意味着我抛出了一个错误。我需要了解这种行为。请善待,因为我知道我必须改进我的代码才能充分利用swift2中新的错误处理概念。非常感谢您。 最佳答案 这很快。在这篇文章的帮助下,我已经找到了解决我的问题的方法:http://www.hackingwithswift.com/new-syntax-swift-2-error-h

swift 2 : Invalid conversion from throwing function of type to non-throwing function

我有一些(丑陋的)自写代码移植到Swift2并在lambda函数中收到此错误消息:我不明白的是,我用错误抛出函数JSONObjectWithData处理了整个代码并捕获了错误。我在代码中什么也没扔。尽管如此,编译器意味着我抛出了一个错误。我需要了解这种行为。请善待,因为我知道我必须改进我的代码才能充分利用swift2中新的错误处理概念。非常感谢您。 最佳答案 这很快。在这篇文章的帮助下,我已经找到了解决我的问题的方法:http://www.hackingwithswift.com/new-syntax-swift-2-error-h

ios - swift 3.0 错误 : Escaping closures can only capture inout parameters explicitly by value

我正在尝试将我的项目更新到Swift3.0,但我遇到了一些困难。我收到下一个错误:“转义闭包只能按值显式捕获inout参数”。问题出在这个函数中:fileprivatefunccollectAllAvailable(_storage:inout[T],nextUrl:String,completion:@escapingCollectAllAvailableCompletion){ifletclient=self.client{let_:T?=client.collectionItems(nextUrl){(resultCollection,error)->Voidinguarderr