Objective-C is a very dynamic language. Its dynamism frees a program from compile-time and link-time constraints and shifts much of the responsibility for symbol resolution to runtime, when the user is in control. Objective-C is more dynamic than other programming languages because its dynamism springs from three sources:
· Dynamic typing—determining the class of an object at runtime
· Dynamic binding—determining the method to invoke at runtime
· Dynamic loading—adding new modules to a program at runtime
Objective-C has a work-around for method overloading, but none for operator overloading.
· Objective-C also does not allow stack based objects. Each object must be a pointer to a block of memory.
· In Objective-C the message overloading is faked by naming the parameters. C++ actually does the same thing but the compiler does the name mangling for us. In Objective-C, we have to mangle the names manually. If you go in deep you will see a complete method names are as : `addA:withB:` which is a selector and `:` is used for parameter.
No comments:
Post a Comment