Time of Update: 2017-02-27
Objective-C資料類型可以分為:基礎資料型別 (Elementary Data Type)、物件類型和id類型。基礎資料型別 (Elementary Data Type)有:int、float、double和char類型。物件類型就是類或協議所聲明的指標類型,例如:NSAutoreleasePool * pool,其中NSAutoreleasePool是一個類,NSAutoreleasePool *是它指標類型。id類型可以表示任何類型,一般只是表示物件類型,不表示基礎資料型別
Time of Update: 2017-02-27
按照資料類型佔用儲存不同可以自動類型轉換或強制類型轉換,總的原則是小儲存容量資料類型可以自動轉換成為大儲存容量資料類型。不同類型資料間按照下面關係的從左至右(從低到高)自動轉換,_Bool 、 char 、 short int 、枚舉類型 -> int ->long int->long long-> float -> double -> long double
Time of Update: 2018-07-23
買了本《learn objective-c on Mac》,一開始買來看起來還蠻薄的,250頁,看了後,發現語言都有很多共同的地方,新的特性都從C++和java類似過來,就是換了個名字,感覺看了以後感覺收穫蠻大,雖然只接觸了點皮毛。 1.C語言知識 2.瞭解了xcode使用 3.懂得了一些新文法和新特性。 ----------------------------------------------------------------------------------
Time of Update: 2018-07-26
在前面, 我們知道了類的本質其實也是一個對象, 是Class類型, 那麼類的載入過程是如何的呢?? 其實類的載入過程非常簡單, 先載入父類然後再載入子類, 而且每一個類就只會載入一次, 下面讓我們來看看~ 例子: #import <Foundation/Foundation.h>@interface Person : NSObject+ (void)load;@end@implementation Person+ (void)load{ NSLog(@
Time of Update: 2018-07-26
Objective-C 屬性特性(assign , retain , copy , readonly , readwrite , atomic , nonatomic)
Time of Update: 2018-07-26
什麼是多態。
Time of Update: 2018-07-26
第1條:瞭解Objective-C語言的起源 1、Objective-C的訊息結構
Time of Update: 2017-01-19
1.建立字串(1)常量字串複製代碼 代碼如下:NSString *string = @"i am an iOSDevTip!";(2)常用建立方法複製代碼 代碼如下:NSString *string = [[NSString alloc] init];string = @"i am an iOSDevTip too!";(3)用initWithString建立字串複製代碼 代碼如下:NSString *string = [[NSString alloc]
Time of Update: 2017-01-19
內省(Introspection)是物件導向語言和環境的一個強大特性,Objective-C和Cocoa在這個方面的表現尤其的優秀。內省是對象揭示自己作為一個運行時對象的詳細資料的一種能力。這些詳細資料包括對象在繼承樹上的位置,對象是否遵循特定的協議,以及是否可以響應特定的訊息等等。NSObject協議和類定義了很多內省方法,用於查詢運行時資訊,以便根據對象的特徵進行識別。恰當地使用內省可以使物件導向的程式運行更加高效和強壯。也有助於避免錯誤地進行訊息派發、錯誤地假設對象相等。下面的部分舉例介紹
Time of Update: 2018-07-24
1.自己的舊項目沒有使用ARC,但是引入的第三方庫卻是使用了ARC的。 2.自己的新項目使用了ARC,但是引入的第三方庫或者以前寫的代碼卻沒有使用ARC。 這兩種情況下,直接肯定是通不過編譯的。可以通過升級舊項目,讓其使用ARC來解決,但這個辦法有時候會很麻煩。 有一個簡單的辦法就是,可以指定單個檔案是否採用ARC來進行編譯。 方法就是在Build Phase裡面的Compile Source裡面找到需要特殊處理的檔案,加上編譯選項(Compiler
Time of Update: 2018-07-25
首先是header檔案: Objective-c代碼 #import <Foundation/Foundation.h> @interface Sort : NSObject{
Time of Update: 2018-07-24
轉自:http://blog.jobbole.com/45963/ 過去的幾年中湧現了大量的Objective-C開發人員。有些是從動態語言轉過來的,比如Ruby或Python,有些是從強型別語言轉過來的,如Java或C#,當然也有直接以Objective-C作為入門語言的。也就是說有很大一部分開發人員都沒有使用Objective-C太長時間。當你接觸一門新語言時,更多地會關注基礎知識,如文法和特性等。但通常有一些更進階的,更鮮為人知又有強大功能的特性等待你去開拓。
Time of Update: 2018-08-01
文章轉自 @implementation Son : Father- (id)init{ self = [super init]; if (self){ } return self;} 這是一個普通到初始化方法, 子類實現初始化前調用父類的init實現。基於這個初始化方法,我們從三個方面來對比self和super關鍵字。 self是什麼,super是什麼。 在動態方法中:self代表著”對象”; 在靜態方法中:self代表著”類”;
Time of Update: 2018-08-04
<span style="font-size:18px;">#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) { @autoreleasepool { //字典 /* 字典 NSDictionnary//NSMutableDictionary
Time of Update: 2018-08-19
【基本概念】 索引值觀察是一種使對象擷取其他對象的特定屬性變化的通知機制。控制器層的綁定技術就是嚴重依賴索引值觀察獲得模型層和控制器層的變化通知的。對於不依賴控制器層類的應用程式,索引值觀察提供了一種簡化的方法來實現檢查器並更新使用者介面值。
Time of Update: 2018-08-19
Block閉包是OC中比較進階的概念。我們通過簡單的代碼來理解一下: #import <UIKit/UIKit.h>#import "AppDelegate.h"//代碼塊的聲明;傳回值int,參數類型int、int;int (^max)(int,int);typedef void (^SayHello)();int main(int argc, char * argv[]) { //代碼塊的賦值; max = ^(int
Time of Update: 2018-08-19
#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) { @autoreleasepool { ////////////////////////////////////////////////////////////////////// //判斷兩個字串是否相同; NSString *string1 = @"Hello World";
Time of Update: 2018-08-19
可變數組比普通的數組更加靈活。在OC中的實現如下: #import <UIKit/UIKit.h>#import "AppDelegate.h"int main(int argc, char * argv[]) { NSMutableArray *arr = [[NSMutableArray alloc] init]; for (int i = 0; i < 100; i++) {
Time of Update: 2018-08-19
(1)建立數組並輸出。直接使用NSArray建立數組,[arr count]調用的是方法,來計算數組的長度。[arr objectAtIndex:i]是調用方法擷取某個Index位置的對象。 #import <UIKit/UIKit.h>#import "AppDelegate.h"int main(int argc, char * argv[]) { NSArray *arr =
Time of Update: 2017-08-16
標籤:方式 think 提高 object cmmi div c++基礎 設計 sdn