中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS instancetype與id的比較

發布時間:2020-07-27 01:34:50 來源:網絡 閱讀:513 作者:大頭狼小鬼 欄目:移動開發

instancetype是clang3.5開始,clang提供的一個關鍵字,表示某個方法返回的未知類型的Objective-C對象。

instancetype只能作為返回值,不能像id那樣作為參數。

使用 instancetype 返回的一定是調用該方法的實例,而id則不一定,因為id是作為一個范型來使用的

相同點:都可以作為方法的返回類型

①instancetype可以返回和方法所在類相同類型的對象,id只能返回未知類型的對象;

②instancetype只能作為返回值,不能像id那樣作為參數

使用instancetype有三點好處:

1、明確性。代碼只做你讓它做的事,而不是其他。

2、程式化。你會養成好習慣,這些習慣在某些時候會很有用,而且肯定有用武之地。

3、一致性。讓代碼可讀性更好。

用instancetype代替init作為返回值的確沒有技術上的好處。但這是因為編譯器自動將id轉化成了instancetype。你以為init返回的值類型是id,其實編譯器返回了instancetype。

在寫一條返回id的消息前,問自己:這個類返回實例嗎?如果返回,用instancetype。

肯定有需要返回id的時候,但你用instancetype的頻率應該會更高


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桐庐县| 甘谷县| 册亨县| 温宿县| 志丹县| 灌云县| 高碑店市| 油尖旺区| 安龙县| 内丘县| 卫辉市| 桦甸市| 兴文县| 清苑县| 庆云县| 西和县| 辽宁省| 淳化县| 徐州市| 民勤县| 蓝山县| 南郑县| 扶沟县| 黎平县| 周口市| 临高县| 澄迈县| 灵宝市| 衡阳市| 象山县| 慈溪市| 乌恰县| 谢通门县| 文昌市| 梁平县| 孟津县| 通渭县| 长宁县| 炉霍县| 扬州市| 平乐县|