iOS理论篇-第一个Objective-C程序

用OC打出hello

对C的扩展

Objective-C与C、C++同源,编译器能理解这3种变体。Xcode中编译工作默认由LLVM处理。

最简单的Objective-C程序

好的,此处直接上最简单的iOS APP程序!
Xcode上create一个iOS app项目,注意language选Objective-C(选错重来哈),use core data和include tests都不勾选(还用不上)。source control想用的看这篇操作。
找到main文件,return之前加上下句,左上小三角点起来~

NSLog(@"hello,Objective-C");

iOS理论篇-第一个Objective-C程序

解析程序

#import <UIKit/UIKit.h>
#import "AppDelegate.h"

int main(int argc, char * argv[]) {
    NSString * appDelegateClassName;
    @autoreleasepool {
        // Setup code that might create autoreleased objects goes here.
        appDelegateClassName = NSStringFromClass([AppDelegate class]);
    }
    NSLog(@"hello,Objective-C");
    return UIApplicationMain(argc, argv, nil, appDelegateClassName);
}
  1. #import可保证头文件只被包含一次。第一句引入,告诉编译器查找UIKit框架中的UIKit.h文件。
#import <UIKit/UIKit.h>
#import "AppDelegate.h"

知识补充1:
框架是一种把头文件、库、图片、声音等内容聚集在一个独立单元中的集合体。
抓主体,框架是一种集合体(重复三遍)!
苹果公司将Cocoa、QuickTime、OpenGL等技术作为框架集来提供。Cocoa组成部分包括Foundation和Core Image。

  1. main程序入口不解释
int main(int argc, char * argv[])
  1. NSLog()打印到控制台到函数,@"string"表示引号内到字符串应作为Cocoa中NSString元素来处理。
NSLog(@"hello,Objective-C");

知识补充2:
函数前缀NS,工具包还是NeXT Software公司的产品,苹果没有破坏兼容性,都用NS前缀。好的,就用到现在。至于为啥要前缀,我的函数库,只要你不用NS前缀,那我就是独一无二,不怕盖。

  1. return程序返回不解释
return UIApplicationMain(argc, argv, nil, appDelegateClassName);

结语

上手的快乐~

上一篇:基于Python从头开始使用 RMSProp 进行梯度下降


下一篇:论文笔记 IJCAI 2019|Extracting Entities and Events as a Single Task Using a Transition-Based Neural Mode