5

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

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 *”会丢弃限定符

4

1 回答 1

7

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

SCNetworkReachabilityContext context = {0, ( void * )self, NULL, NULL, NULL};
于 2011-08-22T17:58:59.813 回答