__weak UIDataType *weakSelf和UIDataType __weak *weakSelf有什么区别?

6
我看到了两种不同的实现...
__weak UIDataType *weakSelf = self;

并且

UIDataType __weak *weakSelf = self;

它们似乎都能工作。在底层发生的事情有什么区别吗?

感谢您的智慧提前!

1个回答

4

没有区别。因为__weak只能应用于指向对象类型的指针,编译器认识到对以下所有内容只有一种有意义的含义:

__weak UIDataType *weakSelf;
UIDataType __weak *weakSelf;
UIDataType * __weak weakSelf;

同样适用于其他所有权限定符(__strong,__autoreleasing等)。
如果您习惯阅读编程语言的技术规范,可以在此处阅读更多信息:http://clang.llvm.org/docs/AutomaticReferenceCounting.html#spelling

1
谢谢您,也感谢您提供相关参考链接。 - Till

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接