草庐IT

weak_ptr_cast

全部标签

ios - Swift:PrepareForSegue,Swift Cast 失败

我想在我的TableViewController中选择一个单元格。单元格的文本应该通过segue传输到FirstViewController的标签。我总是收到如下所示的错误。标识符正确。我的代码:overridefuncprepareForSegue(segue:UIStoryboardSegue!,sender:AnyObject!){if(segue.identifier=="BackToCalculator"){//letmyRow=tableView.indexPathForSelectedRow().row+1letvc=segue.destinationViewContro

swift - Xcode 6.3 和 Swift 1.2 中的新警告 : Cast from '[SKNode]' to unrelated type 'String' always fails

更新到xCode6.3/Swift1.2后,我遇到了一个我无法解决的错误:“从‘[SKNode]’转换为不相关的类型‘String’总是失败”。下面是我的GameScene代码,它从解析p-list开始。importSpriteKitclassGameScene:SKScene,SKPhysicsContactDelegate,NSXMLParserDelegate{varcurrentTMXFile:String?overridefuncdidMoveToView(view:SKView){/*Parsep-list*/letpath=NSBundle.mainBundle().pa

swift - 可以使用 weak 为什么要使用 unowned?

这个问题在这里已经有了答案:Whatisthedifferencebetweenaweakreferenceandanunownedreference?(7个答案)关闭8年前。在Swift中,可以选择使用unowned或weak。当可以使用weak时,为什么要使用unowned?看起来两者几乎相同,weak更安全。

c++ - swift 3 中是否有等效的 c++ shared_ptr?

我知道swift3中的强引用(默认)和弱引用(使用weak关键字),但是是否有等效的共享引用?谢谢 最佳答案 Swift中的内存管理范式与C++不同,因为它继承了Objective-C的保留-释放机制(通过ARC)。如您所料,C++的解决方案减少了编译器的责任,更具表现力和优化,但使用起来也更复杂。因此,回答您的问题:strong(默认)基本上像shared_ptr一样工作,weak就像weak_ptr和unique_ptr没有直接的等价物。但是,如果编译器能够保证指针的唯一性(例如,您在同一范围内创建和销毁对象-就像函数的主体-而

ios - 如何在 objc_weak_error 上设置中断

在我的应用程序中,我有时会收到此错误:objc[3899]:__weakvariableat0x610000056bd0holds0x10003insteadof0x610000302640.Thisisprobablyincorrectuseofobjc_storeWeak()andobjc_loadWeak().Breakonobjc_weak_errortodebug.如何在“objc_weak_error”上设置中断。我应该这样设置吗?可能不是,我试过带引号和不带引号。因为当错误发生时我没有休息,所以有些事情是不对的。 最佳答案

swift - 错误 : Could not cast value of type NSKVONotifying_MKUserLocation to Park_View. AttractionAnnotation

使用此功能时:funcmapView(mapView:MKMapView!,viewForAnnotationannotation:MKAnnotation!)->MKAnnotationView!{letannotationView=AttractionAnnotationView(annotation:annotation,reuseIdentifier:"Attraction")annotationView.canShowCallout=truereturnannotationView}发生此错误:Couldnotcastvalueoftype'NSKVONotifying_MK

Swift 协议(protocol)错误 : 'weak' cannot be applied to non-class type

Protocols和class-boundProtocols有什么区别,我们应该在Swift中使用哪一个?protocolA:class{...}protocolA{...}当协议(protocol)未定义为:class时尝试添加weak委托(delegate)时出现错误:protocolA{...}weakvardelegate:A给出错误:'weak'cannotbeappliedtonon-classtype或'weak'mustnotbeappliedtonon-class-bound'A';consideraddingaprotocolconformancethathasac

xcode - iOS8.0 的 CompileSwift 状态为 "the current deployment target does not support automated __weak references"

我正努力在Swift应用程序中使用静态库(从ObjectiveC编译)。我有一个包含相关header的ObjectiveC桥接header。构建应用程序时出现此错误../someDirectory/Xcode/FirstSteps/headers/Acme.h:89:thecurrentdeploymenttargetdoesnotsupportautomated__weakreferencesAcme类确实使用弱引用,但部署目标是iOS8.0,它应该支持它们。我是不是找错树了?Acme.h的第89行显示:-(void)addTopicListener:(__weakNSObject*

swift - 带有 RxSwift 的 MVVM-C : '[weak self]' in closure

我正在使用RxSwift开发一个iOS项目,我使用带协调器模式的MVVM。这里是我的实现:View模型://MARK:-PrivateprivateletshowNextViewSubject=PublishSubject()//MARK:-InputsvarshowNextView:AnyObserver{returnshowNextViewSubject.asObserver()}//MARK:-OutputsvardidShowNextView:Observable{returnshowNextViewSubject.asObservable()}ViewController:p

Swift 3 核心数据 - NSExpression forFunction : "sum:" throws error ("could not cast dictionary to Day")

我有日子和任务。一天有很多任务。每个任务都有一个名为“点数”的属性,我想总结当天任务的所有点数。我使用了下面的代码(在教程的核心数据一书中找到,swift2版本)并尝试为swift3修改它(我还添加了一个谓词,但这并不重要)。但是当我运行这段代码时,我得到了这个错误:Couldnotcastvalueoftype'NSKnownKeysDictionary1'(0x10d02d328)to'MyProject.Day'我做错了什么?//sumcurrentday'staskpointsletsumRequest:NSFetchRequest=Day.fetchRequest()sumR