開啟主選單
求真百科
搜尋
檢視 Objective-C 的原始碼
←
Objective-C
由於下列原因,您沒有權限進行 編輯此頁面 的動作:
您請求的操作只有這個群組的使用者能使用:
用戶
您可以檢視並複製此頁面的原始碼。
{| class="wikitable" align="right" |- | style="background: #FF2400" align= center| '''<big>Objective-C</big>''' |- |<center><img src=https://p1.ssl.qhimg.com/dr/270_500_/t0127b416749114d937.jpg?size=268x341 width="300"></center> <small>[https://baike.so.com/doc/5062779-5290095.html 来自 网络 的图片]</small> |- |- | align= light| |} '''Objective-C''',通常写作ObjC或OC和较少用的Objective C或Obj-C,是扩充C的面向对象编程语言。它主要使用于Mac OS X和GNUstep这两个使用OpenStep标准的系统,而在NeXTSTEP和OpenStep中它更是基本语言。GCC与Clang含Objective-C的编译器,Objective-C可以在GCC以及Clang运作的系统上编译。1980年代初布莱德·考克斯(Brad Cox)在其公司Stepstone发明Objective-C。他对软件设计和编程里的真实可用度问题十分关心。Objective-C最主要的描述是他1986年出版的书 Object Oriented Programming: An Evolutionary Approach. Addison Wesley. ISBN 0-201-54834-8. =='''简介'''== Objective-C是非常实用的语言。它是一个用C写成很小的运行库,令应用程序的尺寸增加很小,和大部分OO系统使用极大的VM执行时间会取代了整个系统的运作相反。Objective-C写成的程序通常不会比其原始码大很多。而其函式库(通常没附在软件发行本)亦和Smalltalk系统要使用极大的内存来开启一个窗口的情况相反。因此,Objective-C它完全兼容标准C语言(C++对C语言的兼容仅在于大部分语法上,而在ABI(Application Binary Interface)上,还需要使用extern "C"这种显式声明来与C函数进行兼容),而在此基础上增加了面向对象编程语言的特性以及Smalltalk消息机制。Objective-C的最初版本并不支持垃圾回收。在当时这是争论的焦点之一,很多人考虑到Smalltalk回收时有漫长的死亡时间,令整个系统失去功用。Objective-C为避免此问题才不拥有这个功能。虽然某些第三方版本已加入这个功能(尤是GNUstep), Apple在其Mac OS X 10.3中仍未引入这个功能。 =='''评价'''== Apple在其Mac OS X 10.3中仍未引入垃圾回收这个功能。不过令人欣慰的是在Apple发布的Xcode4中已经支持自动释放(不等同于严格意义上的垃圾[[回收]],因为两者机制不同)。在Xcode4中的自动释放,也就是ARC(Automatic Reference Counting)机制,不需要用户手动去Release一个对象,而是在编译期间,编译器会自动帮你添加[NSObject release]。另一个问题是Objective-C不包括命名空间机制(namespace mechanism),取而代之的是程序设计师必须在其类别名称加上前缀,时常引起冲突。在2004年,在Cocoa编程环境中,所有Mac OS X类和函数均有"NS"作为前缀,例如NSObject或NSButton,以表明它们属于Mac OS X核心(使用"NS"是由于这些类和函数在NeXT OpenStep开发时定下的)。<ref>[https://new.qq.com/omn/20200310/20200310A003CY00.html Objective-C]搜狗</ref> =='''参考文献'''== [[Category:470 製造總論]]
返回「
Objective-C
」頁面