1
@interface Demo2ViewController () <GMGridViewDataSource, GMGridViewSortingDelegate, GMGridViewTransformationDelegate>
{
    __gm_weak GMGridView *_gmGridView1;
    __gm_weak GMGridView *_gmGridView2;

    __gm_weak UIButton *_buttonOptionsGrid1;
    __gm_weak UIButton *_buttonOptionsGrid2;

    UIPopoverController *_popOverController;
    UIViewController *_optionsController1;
    UIViewController *_optionsController2;
}

GMGridview を試してみると、__gm_weak GMGridView *_gmGridView1; が表示されました。__gm_weak の意味と、__ をいつ使用するか知っている人はいますか? 前もって感謝します。

4

1 に答える 1

4

これらの宣言は一般的ではなく、GMGridView ソースで定義されています。

//
// ARC on iOS 4 and 5
//

#if __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_5_0 && !defined (GM_DONT_USE_ARC_WEAK_FEATURE)
#define __gm_weak __weak
#else
#define __gm_weak __unsafe_unretained
#endif

二重アンダースコアの使用に関しては、私はそれをお勧めしません。実装(ツールチェーンなど)のために予約されていると考えて、通常の識別子を使用してください。

于 2012-08-29T04:55:15.107 に答える