6

私は2つの異なる実装を見ています...

__weak UIDataType *weakSelf = self;

UIDataType __weak *weakSelf = self;

それでも、どちらも機能しているようです。ボンネットの下で何が起こるかという点で違いはありますか?

あなたの知恵を前もってありがとう!

4

1 に答える 1

4

違いはありません。オブジェクトへのポインター型にのみ適用できるため__weak、コンパイラーは、次のすべてに意味のある意味が 1 つしかないことを認識します。

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

同じことが他の所有権修飾子 ( 、 など) にも当てはまり__strongます__autoreleasing

プログラミング言語の技術仕様を読むのに慣れている場合は、http: //clang.llvm.org/docs/AutomaticReferenceCounting.html#spellingで詳細を読むことができます。

于 2012-12-19T20:16:46.440 に答える