虽然Objective-C和C++都是在C的基础上加入面向对象特性扩充而成的程序设计语言,但二者实现的机制差异很大。Objective-C基于动态运行时类型,而C++基于静态类型。也就是说,用Objective-C编写的程序不能直接编译成可令机器读懂的机器语言(二进制编码),而是在程序运行时,通过运行时(Runtime)把程序转译成可令机器读懂的机器语言;用C++编写的程序,编译时就直接编译成了可令机器读懂的机器语言。这也就是为什么把Objective-C视为一门动态开发语言的原因。
虽然Objective-C和C++都是在C的基础上加入面向对象特性扩充而成的程序设计语言,但二者实现的机制差异很大。Objective-C基于动态运行时类型,而C++基于静态类型。也就是说,用Objective-C编写的程序不能直接编译成可令机器读懂的机器语言(二进制编码),而是在程序运行时,通过运行时(Runtime)把程序转译成可令机器读懂的机器语言;用C++编写的程序,编译时就直接编译成了可令机器读懂的机器语言。这也就是为什么把Objective-C视为一门动态开发语言的原因。
本文标题:把Objective-C视为一门动态开发语言的原因
本文链接:https://www.haomeiwen.com/subject/pfaniqtx.html
网友评论