------- android教育訓練、IOS教育訓練、期待與您交流! ----------
一、 OC簡介
Ø C語言的基礎上,增加了一層最小的面向對象文法
Ø 完全相容C語言
Ø 可以在OC代碼中混入C語言代碼,甚至是C++代碼
Ø 可以使用OC開發Mac OS X平台和iOS平台的應用程式
二、 OC文法預覽
1. 關鍵字
Ø 基本上所有關鍵字都是以@開頭
Ø 下面列舉一些常見的關鍵字,看一眼就行了,不用去翻資料查找它們的含義
@interface、@implementation、@end
@public、@protected、@private、@selector
@try、@catch、@throw、@finally
@protocol、@optional、@required、@class
@property、@synthesize、@dynamic
self、super、id、_cmd、__block、__strong、__weak、
2. 字元串以@開頭
比如@"Hello"是OC中的字元串,而"Hello"則是C語言中的字元串
三、 OC程式的開發過程
與C語言類似:
跟C語言一樣,OC程式的入口依然是main函數,隻不過寫到一個.m檔案中。比如這裡寫到一個main.m檔案中(檔案名可以是中文)
#include <stdio.h>
int main()
{
printf("第1個OC程式\n");
return 0;
}
2. 終端指令
Ø 編譯cc –c main.m
Ø 連結cc main.o
Ø 運作./a.out
來點跟C語言不一樣的,使用NSLog函數輸出内容
#import <Foundation/Foundation.h>
int main()
{
NSLog(@"第2個OC程式");
return 0;
}
2. 終端指令
Ø 編譯cc –c main.m
Ø 連結cc main.o –framework Foundation
Ø 運作./a.out
3. NSLog與printf的差別
Ø NSLog接收OC字元串作為參數,printf接收C語言字元串作為參數
Ø NSLog輸出後會自動換行,printf輸出後不會自動換行
Ø 使用NSLog需要#import <Foundation/Foundation.h>
Ø 使用printf需要#include <stdio.h>
4. #import的作用
Ø 跟#include一樣,用來拷貝某個檔案的内容
Ø 可以自動防止檔案内容被拷貝多次,也就以為着頭檔案中不用加入下面的預處理指令了
#ifndef _STDIO_H_
#define_STDIO_H_
#endif
5. Foundation架構的作用
Ø 開發OC、iOS、Mac程式必備的架構
Ø 此架構中包含了很多常用的API(應用程式設計接口)
Ø 架構中包含了很多頭檔案,若想使用整個架構的内容,包含它的主頭檔案即可
#import <Foundation/Foundation.h>
6. BOOL的使用
Ø BOOL類型的本質
typedef signed char BOOL;
Ø BOOL類型的變量有2種取值:YES、NO
#define YES (BOOL)1
#define NO (BOOL)0
Ø BOOL的輸出(當做整數來用)
NSLog(@"%d %d", YES, NO);