麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

PerformSelectormaycausealeakbecauseitsselectorisunknown解決方法

2019-11-14 20:23:11
字體:
來源:轉載
供稿:網友

我的技術博客經常被流氓網站惡意爬取轉載。請移步原文:http://www.companysz.com/hamhog/p/3801030.html,享受整齊的排版、有效的鏈接、正確的代碼縮進、更好的閱讀體驗。

在Objective-C中需要以函數名或者函數指針來調用函數時,以回調函數為例,對象為(id)target,它的成員函數名為callback,之前習慣是這么寫的:

if ([target respondsToSelector:callback]){    [target performSelector:callback withObject:nil];}

但是在ARC下會報一個warning: PerformSelector may cause a leak because its selector is unknown

在網上查,很多人說的方法都是定義宏去ignore warning之類的。總感覺很不爽。今天查到了正確的解決方法:

【解決方法】

if ([target respondsToSelector:callback]){//    [target performSelector:callback withObject:nil];    IMP imp = [target methodForSelector:callback];    void (*func)(id, SEL) = (void *)imp;    func(target, callback);}

這樣就不會報warning了。

【原因】

詳細解釋可見爆棧上這個被采納的答案

暫時沒時間翻譯了,就先貼個鏈接在這兒吧~


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美一级毛片欧美一级成人毛片 | 毛片视频在线免费观看 | 国产一级做a爰片在线看 | 特黄一区二区三区 | 亚洲免费视频大全 | 97久久人人超碰caoprom | 欧美激情精品久久久久久黑人 | 国产精品视频成人 | av电影在线观看网址 | 一级色毛片 | 国产精品99久久99久久久二 | 黄色片网站在线看 | 孕妇体内谢精满日本电影 | 一区二区国产在线 | 国产黄色录像片 | 国产精品中文在线 | 欧美日韩一区,二区,三区,久久精品 | 久久久久久免费 | 国产乱淫av | 成人店女老板视频在线看 | 羞羞电影在线观看www | 黄色免费小网站 | 在线成人看片 | 91精品国产99久久久久久红楼 | 午夜热门福利 | 在线视频 欧美日韩 | 精品一区二区久久久久久按摩 | 天天色综合6| 久色免费| 色视频在线 | 成人视屏网站 | 婷婷久久影院 | 成人午夜天堂 | 黄污网站在线 | 男女一边摸一边做羞羞视频免费 | 久久亚洲视频网 | 久久久久久久久久久高潮一区二区 | 双性帝王调教跪撅打屁股 | 中国国语毛片免费观看视频 | 国产超碰人人做人人爱ⅴa 国产精品久久久久久久hd | 中文字幕在线观看国产 |