1. 头文件依然是.h
2. .cpp变成了.m
3. #import代替了#include,#import保证只会引用一次,相当于.h里的#ifndef #define #endif模式
4. 用@interface … @end来声明类,取代class ClassName{}
5. 用@implementation … @end来实现类
6. Data Members放在@interface ClassName : Parent{ … }中,默认权限为@protected,在ObjC里称为Instance Variables
7. Member Functions放在@interface ClassName: Parent{} … @end中,在ObjC里称为Instance Methods
8. Instance Methods的声明方式为:scope (returnType) methodName: (parameter1Type) parameter1Name;
9. scope分instance和class两种,分别用-和+表示
10. 调用method的方式是[object method],相当于object->method()
11. 带参数调用method的方式是[object method: parameter]
12. 没有Object,只有Pointer to Object
13. 通常的构造方式: Object * obj = [[Object alloc] init]
14. 析构的方式:[obj release]
15.多参数method的声明方式: scope (returnType) methodName: (parameter1Type) parameter1Name label1Name: (parameter2Type) parameter2Name … ;
16. labelName不是必须的
17. 这种特别的语法源自SmallTalk
18. private: [list of vars] protected: [list of vars] public: [list of vars] 改成了@private, @protected, @public
19. Class Variable用static的方法实现⋯⋯
20. +(void) initialize 会在构造的时候被调用
21. ObjC通常用@符号表示语言的衍生部分
22. ObjC用id来表示范型对象的指针
23. 支持动态类型识别
24. Categories机制可用于不继承已有class的前提下加入新功能
25. Posing机制允许Child取代Parent
26. Protocol相当于pure virtual class
27. ObjC由两种内存管理的方法,1) retain and release,2) retain and release/autorelease
28. Foundation相当于STL,NSArray对应vector,NSDictionary对应map
29. ObjC不支持Namespace
30. 不支持重载
trackback:http://icomes.net/tag/objc/
分享到:
相关推荐
《从 C++ 到 Objective-C 快速精通》是一本专为C++程序员设计的指南,旨在帮助他们迅速掌握Objective-C这门强大的编程语言。Objective-C是苹果平台上的主要开发语言,尤其在iOS和macOS应用程序开发中占据核心地位。...
### 从C++到Objective-C:关键知识点解析 #### 一、Objective-C简介与历史背景 **Objective-C** 是一种面向对象的编程语言,最初由Bradd Cox在1980年代初设计,并由Stepstone公司开发。它是一种C语言的超集,这...
### 从C++到Objective-C:关键知识点解析 #### 一、Objective-C简介与历史背景 **Objective-C** 是一种面向对象的编程语言,最初由Brad Cox和Tom Love于1980年代早期开发,后来被苹果公司采纳并广泛应用于其操作...
### 从C++到Objective-C:关键知识点解析 #### 一、Objective-C简介与背景 Objective-C是一种结合了C语言特性和面向对象编程思想的编程语言。它最初由Brad Cox和Tom Love在20世纪80年代初设计,并在1986年由...
### 从C++到Objective-C:关键知识点概览 #### 一、Objective-C与Cocoa概述 **Objective-C**是一种面向对象的编程语言,它是C语言的一种扩展,旨在支持面向对象编程特性。Objective-C最著名的应用是在苹果公司的...
标题为“From C++ to Objective-C (从C++到Objective-C)”的文章主要探讨了从C++转向Objective-C的程序员应该了解的关键概念和差异。Objective-C是一种主要用在苹果公司产品开发上的面向对象的编程语言,特别是在Mac...
从C++到Objective-C的转型指南涉及到了几个重要的IT知识领域,主要包括编程语言的比较、面向对象编程的概念、Objective-C语言的语法特点以及与C++的共性和差异。 首先,Objective-C是一种主要在苹果公司产品开发中...
《从C++到Objective-C》版本1.11是一份专为C++程序员设计的教程,旨在帮助他们顺利过渡到Objective-C的世界。这份教程由法国专家编写,专注于讲解两种语言之间的差异、相似之处以及如何有效地将C++技能应用到...
Objective-C是基于C语言的,主要用于构建iOS和macOS应用程序,而Objective-C++则是Objective-C的一个扩展,它引入了C++的特性,使得开发者可以同时利用Objective-C的动态特性和C++的面向对象编程能力。 ### ...
### 从C++到Objective-C:版本1.9的关键知识点概览 #### 一、简介与背景 在《从C++到Objective-C》这本由Pierre Chatelier编写的指南中,作者通过丰富的示例和深入浅出的解释,帮助读者理解如何从C++转向Objective...
### 从C++到Objective-C的关键知识点 #### 1. Objective-C与C++的主要区别 - **语言背景**: Objective-C是一种面向对象的编程语言,它是在C语言的基础上发展起来的,旨在提供更好的对象管理和消息传递机制。C++则...
从C/C++过渡到Objective-C,需要理解Objective-C独特的消息发送机制以及其类与方法声明的方式。Objective-C通过这种方式实现了更灵活的动态性,同时也带来了一些挑战,比如错误的消息发送可能导致程序崩溃。通过本文...
3. **从c++到Objective-C.pdf** 这本书针对已经熟悉C++的开发者,旨在帮助他们过渡到Objective-C。C++程序员会发现Objective-C与C++有显著的不同,尤其是在面向对象特性上。书中的内容可能包括Objective-C的动态特性...
在C、C++和Objective-C这三种语言混合编程时,头文件管理成为一个关键问题,特别是在Xcode这样的集成开发环境中。由于Objective-C++是Objective-C和C++的融合,它可以处理C和C++的代码,因此将文件扩展名改为.mm可以...
18. Objective-C与C/C++的混合编程:Objective-C与C语言兼容,因此可以轻松地在Objective-C程序中使用C代码。同时,它也能够与C++代码进行交互,但需要遵守特定的规则和约定。 19. Import指令:在Objective-C中,@...
所以有一定C/C++语言基础理解和掌握Objective-C也会相应的快些。这回,我们将比较着学习 Objective-C语言,掌握其语法并理解其思想。 语法 让我们先来看看C++和Objective-C中对于类的宣言 : C++ #...
在iOS和macOS开发中,Xcode是Apple官方推荐的集成开发环境(IDE),它支持Objective-C和Swift等语言。然而,有时我们可能需要在项目...同时,利用C++的性能优势时,也要考虑到与Objective-C的兼容性和项目的整体架构。