Tsahi's answer is correct. Let me add few points to support
1. According to "Pure" object oriented principle, no
method/routine should exist without the object. In C++, main
() method can be independant and does not need any class
but Java/C# its static method of "some" class.
2. C++ provides "Friends" which is absolute corruption to
the OO-Principle of encapsulation.
3. According OO-Principle, everything needs to be object.
C++ provide inbuilt datatype- int,float etc which are not
object in their nature. C#/Java also provides same kind of
datatype but its inner presentation is always object. For
example: in java you have got wrapper classes and in C#,
all these types are derived from System.ValueType object.
4. According OO-Principle, one object should have only one
hierarchical parent reference. In C++, Multiple-Inheritance
contradicts this principle.
|| Techy |