Objective-C SCNetworkReachabilityContext ARC转换

时间:2011-08-22 17:46:12

标签: iphone objective-c ipad automatic-ref-counting

在将应用转换为使用自动引用计数时,我遇到了此错误:

SCNetworkReachabilityContext context = {0, self, NULL, NULL, NULL};

ARC 不允许将Objective-C指针隐式转换为'void *'

这可以修复编译器错误,但会发出警告:

SCNetworkReachabilityContext context = {0, objc_unretainedPointer(self), NULL, NULL, NULL};

如何摆脱这种警告?

使用'objc_objectptr_t'(又名'const void *')表达式初始化'void *'会丢弃限定符

1 个答案:

答案 0 :(得分:7)

你应该能够毫无问题地将self(id)转换为void *。

SCNetworkReachabilityContext context = {0, ( void * )self, NULL, NULL, NULL};