C++ is not an object-oriented language

Michael I. Bushnell mike at turing.UNM.EDU
Thu Mar 3 11:27:32 AEST 1988


In article <719 at cresswell.quintus.UUCP> ok at quintus.UUCP (Richard A.
O'Keefe) writes:

>In article <...>, tub!cabo (Carsten Bormann @ Technical University of Berlin)
>> For the uninitiated: C++ is not an ``object-oriented language''.

>I'm ever so sorry, the correct term, taken from Stroustrup's book,
>is not "object-oriented".  I was quite wrong.  It is "object-BASED".
>Stroustrup says quite explicitly on the first page of the preface
>that 'the key concept in C++ is "class".'
>          ***	(my emphasis)
>If that doesn't entitle it to the description "object-oriented language",
>then Simula, Clascal, and various others aren't object-oriented either.

Actually there is a real difference between C++ and real OO languages:
in C++ you have to type your variables.  Because of this, message
overloading isn't nearly as useful.  

In an object oriented language, just as in a value oriented language,
variables are not typed in any way.

Another important thing is that in the only fully object oriented
language, smalltalk, note that *everything* is an object.  Even the
classes.  In C++ there is no notion of a metaclass.  This is also a
problem with "Little Smalltalk."

				Michael I. Bushnell
				Internet: mike at turing.unm.edu
				UUCP: mike at turing.unm.edu
				Bitnet: mike at turing.unm.edu
				CSnet: mike at turing.unm.edu
				YourFavoriteNet: mike at turing.unm.edu
			Golly, don't domains make everything simpler?
For peoply who run UUCP but haven't switched over to smail *yet*, you
can try {ucbvax,gatech}!unmvax!turing!mike.  

Or write:
  {Box 295, Coronado Hall} or {Computer Science, Farris Engineering Center}
  University of New Mexico
  Albuquerque, NM 87131
Or call:
  (505)277- [2992=dorm][6116=work]

I work for the CS department.  But don't blame them.



More information about the Comp.lang.c mailing list