Time of Update: 2015-07-12
標籤:
Time of Update: 2015-06-20
標籤:objective oc 快速枚舉 數組排序 直接上代碼: /* * 快速枚舉 * */ NSLog( @"++++++++++++++++++" ) ; NSArray *testArray = @[@1, @2, @3, @4, @5] ;
Time of Update: 2015-06-20
標籤:objective block 數組排序 oc objetive-c 直接上代碼://寫?一個 傳回值為整型 參數為NSString(僅?一個參// 數)的block,實現將字串轉換為整型的功能。// int (NSString *string) {// return [string
Time of Update: 2015-07-12
標籤:特別注意:千萬不要在description方法中同時使用%@和self,同時使用了%@和self,代表要調用self的description方法,因此最終會導致程式陷入死迴圈,迴圈調用description方法1.NSLog回顧 大家都知道,我們可以用NSLog函數來輸出字串和一些基本資料類 1 int age = 11; 2 NSLog( @" age is %d",
Time of Update: 2015-06-25
標籤:http://www.tekuba.net/program/335/本系列主要參考資料:Objective-C Runtime ReferenceObjective-C Runtime Programming Guide涉及主要檔案:objc/message.h,objc/objc-api.h,objc/objc.h,objc/runtime.h特酷吧[tekuba.net]採用"署名-非商業用途-保持一致"的創作共用協議,使用本文內容請遵循該協議 Objective-C
Time of Update: 2015-06-20
標籤:objective 集合 set mutableset countedset 直接上代碼:/* * NSSet 不可變 集合 * */ // 兩種初始化方式 NSSet *set1 = [[NSSet alloc]
Time of Update: 2015-06-20
標籤:objective pool autoreleas oc objetive-c autorelease pool 使用注意事項:在 ARC 下,不能使用 [ [ NSAutoreleasePool alloc ] init ] ,而應當使用 @autoreleasepool ;不要把大量迴圈操作放到同一個
Time of Update: 2015-06-19
標籤:NSDictionary *daiwei = @{ @"name":@"David Beckham",
Time of Update: 2015-06-19
標籤:typedef struct Person{ int age; char *name;}Person; int main(int argc, const char * argv[]) { @autoreleasepool { Person person; person.name
Time of Update: 2015-06-19
標籤:objective c++ objective-c 初識Objective-CObjective-C剛誕生的時候,副檔名.m代表message,它指的是Objective-C的一個主要特性。NSLog( @“ %d ” , 12 ); // 可以輸出 12printf ( “ %d\n ” , 23 ); // 可以輸出23NSLog( @“ %s “ , “abc” ) ; //
Time of Update: 2015-06-19
標籤:class import objective objective-c @class 和 #import說明: @class 建立了一個前向引用。這是在告訴編譯器:“相信我。以後你自然會知道這個類到底是什麼,但是現在,你知道這些足矣。” 如果有循環相依性關係,@class 也很有用。即 A 類使用 B 類, B 類也使用 A 類。如果試圖通過
Time of Update: 2015-06-19
標籤:樣本一 (類似C)//1.代碼編寫//跟C語言一樣,OC程式的入口依然是main函數,只不過寫到一個.m檔案中.比如這裡寫到一個main.m檔案中(檔案名稱可以是中文)#include <stdio.h>int main() { printf("Hello world\n"); return 0;}//2.終端指令cc -c main.m //編譯cc main.o //連結./a.out //運行樣本二
Time of Update: 2015-06-19
標籤:類目的定義與類的定義相似:1、聲明@interface NSString (CSayHi) NSString是目標類;CSayHi是類目名稱; 且後面沒有 :NSObject2、實現@implementation NSString
Time of Update: 2015-06-19
標籤:nslog objective objective-c 概念NSLog()可以使用 %@
Time of Update: 2015-06-19
標籤:objective getter 規範 setter 命名規範:對於存取方法的命名,Cocoa有自己的慣例。在為自己的類編寫存取方法時,應當遵守這些慣例,這樣你和其他人讀代碼時才不會感到困惑。 setter
Time of Update: 2015-06-19
標籤:objective objective-c 防禦式編程 優點:防禦式編程能夠在開發早期發現錯誤。例代碼:下面是相關存取方法的實現代碼。- (void)setTire:(Tire *)tire atIndex:(int)index { if (index < 0 || index > 3) { NSLog (@"bad index (%d) in
Time of Update: 2015-06-18
標籤:objective-c可以全自動的實現程式的記憶體管理,主要是依賴於objective-c中引用計數的管理機制首先:記憶體管理的準則是:如果對一個對象使用了A類. alloc,[mutable]copy[withZone],retaion那麼你必須使用相應的B類.release 或者 autorelease解釋:即每次程式中使用了A類的關鍵字,就需要對應使用B類的關鍵字釋放對象記憶體。 1.數組的記憶體管理一個對象聲明,該對象的retainCount =
Time of Update: 2015-06-18
標籤:objective 執行個體 oc objective-c 執行個體變數 一、執行個體變數的可見度(存取權限)二、方法OC中的?方法分兩種:類?方法和執行個體?方法。類?方法:只能類使?用,例如:+(id)alloc 注:類?方法中不能使?用 執行個體變數執行個體?方法:只能對象使?用,例如: -(void)sayHi
Time of Update: 2015-06-18
標籤:new objective super objective-c 使用new建立對象時,系統其實在後台執行了兩個步驟: 第一步:為對象分配記憶體,即對象獲得一個用來存放執行個體變數的記憶體塊; 第二部:自動調用 init 方法,使對象進入可用狀態。註:alloc 的內部實現用的是 new。@implementation Car- (id) init{
Time of Update: 2015-06-18
標籤:objective super objective-c init在 init 方法中,下面這行代碼看起來有些奇怪。if (self = [super init])下面我們來解釋這行代碼的意思。為了讓超類(在這裡是NSObject)將所有需要的初始化工作一次性完成,你需要調用 [super init]。init 方法傳回值(id類型資料,即泛型對象指標)就是被初始化的對象。 將