草庐IT

compare_exchange_weak

全部标签

ios - __strong 和 strong,__weak 和 weak 之间有什么区别?

我是ios编程的菜鸟。请解释一下这些__strong和__weak属性的含义以及使用它们的原因? 最佳答案 strong和weak是用于属性声明的修饰符,而__strong和__weak用于变量声明. 关于ios-__strong和strong,__weak和weak之间有什么区别?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/19660390/

objective-c - IBOutlet 是否暗示 __weak?

刚开始使用ARC。在ARC之前,我只是简单地声明我的导出,例如:IBOutletUIButton*button;所以我不会保留它或任何东西。对于ARC,不指定弱或强意味着强。所以如果我在ARC下做同样的事情(即IBOutletUIButton*button;),这是否意味着按钮是一个强引用?还是我必须明确地将其定义为弱?简而言之,IBOutlet是否暗示__weak? 最佳答案 单词IBOutlet实际上没有定义:#defineIBOutletXcode只是在您的代码中使用这个词的存在,以允许您在InterfaceBuilder中建

objective-c - "property with ' weak' attribute must be of object type"是什么意思?

我的界面中有这个:@property(nonatomic,weak)NSTimeInterval*timeStamp;我的逻辑告诉我,我需要一个时间戳对象,这个对象只会在实例化的上下文中被这个类使用,所以“弱”对我来说似乎是合乎逻辑的——但XCode告诉我“具有“弱”属性的属性必须是对象类型“......如果我这样做:@property(nonatomic)NSTimeInterval*timeStamp;然后错误消失了,但我不确定我明白为什么...... 最佳答案 问题是NSTimeInterval是一个值类型——它是double

ios - KIF 输出 : AX Exchange error: Error Domain=Accessibility Code=0 "Remote service does not respond to _accessibilityMachPort"

在装有iOS8.1.3的设备上运行KIF集成测试时,我收到大量以下类型的诊断消息作为控制台输出:AXExchangeerror:ErrorDomain=AccessibilityCode=0"Remoteservicedoesnotrespondto_accessibilityMachPort"UserInfo=0x1a55de50{NSLocalizedDescription=Remoteservicedoesnotrespondto_accessibilityMachPort}这发生在调用waitForAccessibilityElement:view:withElementMat

ios - 对 NSDictionary 进行降序排序。如何使用 `compare:options:` 选择器发送选项?

我正在尝试对NSDictionary进行排序。来自Appledocs我看到您可以使用keysSortedByValueUsingSelector:NSDictionary*dict=[NSDictionarydictionaryWithObjectsAndKeys:[NSNumbernumberWithInt:63],@"Mathematics",[NSNumbernumberWithInt:72],@"English",[NSNumbernumberWithInt:55],@"History",[NSNumbernumberWithInt:49],@"Geography",nil];

iphone - 带有 -weak_library/usr/lib/libSystem.B.dylib 链接器标志的 objc_setAssociatedObject 上的 EXC_BAD_ACCESS

当我使用链接器标志调用objc_setAssociatedObject时,我有一个EXC_BAD_ACCESS:-weak_library/usr/lib/libSystem.B.dyliblinker旗帜。因为this,我绝对需要链接器标志,有人知道解决方法吗?(我在dispatch_async上也遇到了崩溃,但我可以解决这个问题......另外,我正在我的应用程序上构建一个仅适用于iOS4的功能,它与iOS3兼容)编辑:通过更多研究,我发现了this和this问题,但没有更多的答案...... 最佳答案 问题只是iOS模拟器中的

ios - 通过-weak_library 弱链接静态库

问题:是否可以弱链接静态库(Obj-C)?详细信息我确实希望我的自定义静态框架(MyFramework.framework)弱链接我的其他自定义静态库(libMyLibrary.a)。libMyLibrary.a背后的功能是可选的,如果没有NOlibMyLibrary.a被任何第3方应用程序链接,则可以省略使用MyFramework.framework。Iamusing-weak_library。我的测试应用程序提示静态链接器无法在MyFramework的ABCTracker.o中找到MyLibrary的符号MyClass>符号:Undefinedsymbolsforarchitect

ios - ARC __block 和 __weak

假设我正在尝试从一个block中访问self:[someObjectsuccessBlock:^(NSArray*result){[selfsomeSuccessMethod];}failure:^(NSString*errorMessage,intstatus){[selfsomeFailureMethod];}];我知道这会创建一个保留周期,并且someObject和self永远不会被取消分配。令我困惑的是使用/不使用__block关键字时实际发生的情况。我可以通过对self进行__weak引用来修复保留周期:__weakMyClass*me=self;[someObjectsuc

ios - @synthesize of 'weak' 属性只允许在 ARC 或 GC 模式下第一次编译 urbanship

基本上,我有一个运行正常的IOS应用程序。同时按照http://docs.urbanairship.com/build/ios.html#ios-push-getting-started中的说明进行操作,我到达了“RegisterYourDevice”部分,要求我进行编译。尝试在xCode5中构建代码后,我收到以下错误“@implementationUAPushSettingsAddTagViewController@synthesizeof'weak'propertyisonlyallowedinARCorGCmode”。注意:ARC模式未使用。 最佳答案

swift - 扩展 T 的数组,其中 T 是 Comparable

我想创建一个扩展来扩展T的数组,其中T是Comparable;有点像这样:extensionArraywhereElement==Array{}不幸的是,这不起作用。有办法吗?谢谢 最佳答案 这实际上在Swift4中可用!您可以在文档中阅读相关信息here但这里有一个片段(这将使用新的xcode9及更高版本进行编译)extensionArraywhereElement:Equatable{funcisTop(_item:Element)->Bool{guardlettopItem=self.lastelse{returnfalse}