[comp.sys.mac.programmer] Real C++ in THINK C 5.0

steve@hp-ptp.HP.COM (Steve_Witten) (02/24/90)

Well -- I notice in all the PC rags that Turbo C 3.0 will implement the
total feature set for AT&T C++ 2.0.  I hope the people at Symantec-THINK
are reading these same rags...

I sure would like to have THINK C 5.0 support the feature set of AT&T C++
2.0.  I hate the goofy "pseudo-C++" implemented by THINK C 4.0.

===============================================================================
Steve Witten                    steve%hp-ptp@hplabs.HP.COM
Industrial Applications Center  {ucbvax, hplabs}!hpda!hp-ptp!steve
Hewlett-Packard Co.             steve@hp-ptp

"...I'm no fool! Nosirree!..." -- J. Cricket

cohen@santa_fe.ebay.sun.com (Michael A. Cohen) (02/27/90)

In article <1750003@hp-ptp.HP.COM> steve@hp-ptp.HP.COM (Steve_Witten) 
writes:
> I sure would like to have THINK C 5.0 support the feature set of AT&T C++
> 2.0.  I hate the goofy "pseudo-C++" implemented by THINK C 4.0.

    Actually, I like the "pseudo-C++" that THINK C 4.0 has implemented.  
It definitely is missing many of the "more advanced" C++ features, but I 
think this is actually a good thing!
    By now, C++ has so many features that it is extremely dificult to 
understand the language; and most of the time, I don't need any of those 
features.
    I think that THINK's Object-C implements the _most_ useful feature of 
C++, namely objects with inheritance.  In fact, Object-C (IMHO) corrects one of the biggest mistakes of C++, namely the "virtual" function.  In Object-C 
you never need to declare anything virtual, because the compiler is smart 
enough to figure out if a function needs to be virtual.  In C++, if you 
try to inherit from a class C and want to override member-function F, but C has _not_ declared F to be virtual, you're out of luck. All the other classes
that use C, won't be able to call your new F.  This defeats the whole
purpose of inheritance.

    Of course, it would be nice if Object-C added "public" and "private" 
protection of fields.  But you don't need to go all the way to C++ for 
this!

-- 
Michael Cohen
T_O_P_S
cohen@santa_fe.ebay.sun.com

disclaimer: my opinions! all mine!