OC语言使用“消息结构”(messaging structure)而非“函数调用”(function calling)
2015-12-30 14:49
246 查看
OC语言使用“消息结构”(messaging structure)而非“函数调用”(function calling)
消息与函数调用之间的区别看上去就像这样:
采用消息结构的语言,不论是否多态,总是在运行时才会去查找所有执行的方法。实际上,编译器甚至不关心接收消息的对象是何种类型。
接收消息的对象问题也要在运行时处理,其过程叫做“动态绑定”(dynamic binding)
消息与函数调用之间的区别看上去就像这样:
//Messaging Object *obj = [Object new]; [obj performWith:parameter1 and:parameter2]; //function calling Object *obj = new Object; obj->perform(parameter1,parameter2);关键区别在于:使用消息结构的语言,起运行时所应执行的代码由运行环境来决定;而使用函数调用的语言,则由编译器决定。
采用消息结构的语言,不论是否多态,总是在运行时才会去查找所有执行的方法。实际上,编译器甚至不关心接收消息的对象是何种类型。
接收消息的对象问题也要在运行时处理,其过程叫做“动态绑定”(dynamic binding)
相关文章推荐
- c语言ispunct函数
- 站在巨人的肩膀上,C++开源库大全
- C&C++编译(1)
- Java与C/C++有什么区别
- Java与C/C++有什么区别
- C语言中联合体union的使用
- C++ 服务器客户端编程实例(一)
- C语言中sizeof用法总结
- Sicily 1159. Sum
- C/C++语言中struct的深入探讨
- C语言中的字符和字符串
- C语言struct内存占用问题
- delete void* 释放内存问题(C++)
- C++几种转换类型的区别
- List--C++模板类
- Queue--C++模板类
- Stack--C++模板类
- c++ 数组相关错误
- C++高级程序员成长之路
- cRuntime函数之(getenv_s)