自学笔记之-看视频学习oc基础

来源:互联网 发布:整理通讯录的软件 编辑:程序博客网 时间:2024/05/16 06:28

Objectice-C(OC)字面看—面向对象的C。

首先来看看OC的简介:

1. c语言的基础上,增加了一层最小的面向对象语法

2. 完全兼容c语言

3. 可以在OC代码中混入c语言,甚至C++代码

4. 可以使用OC开发Mac OS X平台和IOS平台应用程序


OC语法预览

1. 关键字

1>  基本上所有的关键字都是用@开头

例如:@interface,@iimplementation,@end,@public,@protected,@private,@protocol,@class,@optional,@property等等

当然还有不是@开头的不过非常少:self,super。

  2> 字符串以@开头

OC中的字符串都是以@开头的。例如@"Hello",这是一个和C语言不同的地方

3> 其他语法(大体上和C语言差不多)



现在我们一边写代码一边学习新知识(边动手边学习效率高)

首先我们编写我们的第一个OC程序:先来个最简单的

[objc] view plaincopy在CODE上查看代码片派生到我的代码片
  1. // import的用途  
  2. /* 
  3.  1.和include一样,拷贝文件内容 
  4.  2.可以自动防止文件的内容被重复拷贝 
  5.  */  
  6.   
  7.   
  8. // Foundation.h是一个主头文件和框架的名字一样包含框架的所有内容,为了使用NSLog  
  9. #import <Foundation/Foundation.h>  
  10.   
  11. // OC 程序的入口: main函数  
  12. int main( )  
  13. {  
  14.     // NSLog输出内容会自动换行  
  15.     NSLog(@"第一个OC程序");  
  16.     return 0;  
  17. }  
可以看到,要想使用Foundation框架的东西必须引入Foundation的主头文件Foundaton.h,而import的作用要优于include,可以防止文件的内容被重复拷贝

下面来看一下OC函数的调用

[objc] view plaincopy在CODE上查看代码片派生到我的代码片
  1. #import <Foundation/Foundation.h>  
  2.   
  3. // test函数的声明  
  4. void test();  
  5.   
  6. // OC 程序的入口: main函数  
  7. int main( )  
  8. {  
  9.     // 调用函数  
  10.     test();  
  11.     // NSLog输出内容会自动换行  
  12.     NSLog(@"第一个OC程序");  
  13.     return 0;  
  14. }  
  15.   
  16. // 函数的调用  
  17. void test()  
  18. {  
  19.     NSLog(@"调用了test函数");  
  20. }  
其实和C语言差不多,因为OC也是自上而下编译,所以如果你的函数写在main函数的下面就要在main函数的前面添加声明void test();


介绍一个和C语言不同的地方:OC里面有一个新的类型BOOL,值只有YES和NO,这点就像java里面一样,上代码

[objc] view plaincopy在CODE上查看代码片派生到我的代码片
  1. #import <Foundation/Foundation.h>  
  2.   
  3. BOOL test();  
  4.   
  5. int main( )  
  6. {  
  7.     BOOL b = YES;  
  8.     BOOL b2 = 1// 1就是YES 0就是NO  
  9.       
  10.     // 接受函数的返回值  
  11.     BOOL b3 = test();  
  12.       
  13.     NSLog(@"%d-%d-%d", b, b2, b3);  
  14.     return 0;  
  15. }  
  16.   
  17. // BOOL函数  
  18. BOOL test()  
  19. {  
  20.     return NO;  
  21. }  
上面的输出结果是1-1-0,很简单

其实BOOL的本质不是int,是char类型的。在头文件中这样定义:typedef signed char BOOL 。

所以BOOL其实就是char,在c语言中知道char也是可以用int来表示的


这就是OC语言,在基础上和C语言差不多,实在C语言的基础上添加了一些新的语法。













0 0
原创粉丝点击