原文地址:http://cocoasamurai.blogspot.com/2010/01/understanding-objective-c-runtime.html Understanding the Objective-C Runtime ...
Objective C . 的運行時環境叫做Morden Runtime,iOS 和Mac OS X bit 的程序都運行在這個環境,也就是說Mac OS X bit 的程序運行在舊的Objective C . 的運行時環境LegacyRuntime,這里我們只講解Morden Runtime。同運行時交互主要在三個不同的地方,分別是A.Objective C 源碼 譬如:你定義的Categor ...
2012-11-08 11:15 0 4068 推薦指數:
原文地址:http://cocoasamurai.blogspot.com/2010/01/understanding-objective-c-runtime.html Understanding the Objective-C Runtime ...
Objective-C語言是一門動態語言,它將很多靜態語言在編譯和鏈接時期做的事放到了運行時來處理。這種動態語言的優勢在於:我們寫代碼時更具靈活性,如我們可以把消息轉發給我們想要的對象,或者隨意交換一個方法的實現等。 這種特性意味着Objective-C不僅需要一個編譯器,還需要一個運行時系統 ...
Objective-C運行時庫提供了非常便利的方法獲取其對象運行時所屬類及其所有成員變量,並通過KVC進行值的存取。 在某些場合,若想遍歷某個對象的所有成員變量的值,或將其轉化為NSDictionary這樣的key-value集合,亦或將其轉化為一個網絡請求的POST參數,都可以通過OC的運行時 ...
前言: Objective C的runtime技術功能非常強大,能夠在運行時獲取並修改類的各種信息,包括獲取方法列表、屬性列表、變量列表,修改方法、屬性,增加方法,屬性等等,本文對相關的幾個要點做了一個小結。 目錄: (1)使用class_replaceMethod ...
/usr/local/bin目錄下。 2,下載Objective-C compiler for P ...
RTTI的兩種使用方法:1. 第一種是typeid(),它很像sizeof,看上去像一個函數,但實際上它是由編譯器實現的。 typeid()的參數是一個對象引用或者指針,返回全局typeinfo類的常量對象的一個引用。可以用==或者!=來互相比較這些對象。 ISO C++標准並沒有確切 ...
前言: Objective C的runtime技術功能非常強大,能夠在運行時獲取並修改類的各種信息,包括獲取方法列表、屬性列表、變量列表,修改方法、屬性,增加方法,屬性等等,本文對相關的幾個要點做了一個小結。 目錄: (1)使用class_replaceMethod ...
9.1前言 內存管理在objective-C 2.0中是非常重要的,內存管理做得好不好,最直觀的就是反應在你的程序crash上面。想要你的程序健壯穩定,那么請務必搞明白內存管理。 9.2 objective-C 2.0是怎樣一個內存機制? 在objective-C 2.0語言 ...