Re: C++ and macs...
Originally posted by Rezet
Hey my frind was wondering how C++ works on mac. He is a PC programmer and always thought thet one cannot use C++ on macs. I don't program anything like that so i really can't give specific answers. could anyone post some keypoint on how C++ works on macs? Like what programs one need to get where to get em? Is it same as on PC? etc...
C++ works great on the Mac, whether you prefer a full-featured IDE (Project Builder) or a command line (emacs/vi + gcc).
You will NOT find MFC on the Mac (as though you wanted to ...) You will instead find Cocoa.
Also, while interface programming in MSVC is done entirely in straight C (or pidgin C++ with MFC), interface programming on the Mac is generally done in Objective C or Java (there is a C++ Cocoa wrapper I believe, but no one uses it because it makes more sense to use Obj-C/C++ for the UI).
With the inclusion of ObjC++ in gcc3 last year, it is very easy to use a C++ cross-platform code base with a Cocoa/ObjC++ front end (prior to ObjC++ you would have had to make your core application a library with a C API, then link your ObjC front end to it ... doable but kludgy).
Personally, I find Project Builder to be a vastly superior coding environment to MSVC++. Heck, for one thing, the performance-optimizing tools (Sampler, etc) are about 100x easier to use than Microsoft's "Easy 15-step, Recursive, CLI-only and you figure out how to interpret the entrails PROFILE procedure".
The only killer on the Mac currently is that gcc (the compiler ProjectBuilder uses) is incredibly slow to build compared to MSVC's cc,
and the output is highly less optimized than the Windows output. On a G4/733 my compile times are 30-45 minutes; on a P4 1.5GHz the same compile (with a Windows front end intstead of a Cocoa front end of course, but otherwise the same code) takes 5-7 minutes. A dual 1.42GHz Mac still takes 15 minutes, which brings it into the reasonable realm, but still a lot slower than the PC. That's the only thing that keeps my primary development machine as a PC today.
I only have XCode's initial Jaguar release (I can't spare a machine for Panther betas so I haven't gotten an updated XCode), and, aside from performance problems (100% CPU while sitting idle for a day ... not doing a rendezvous bulid for anyone else either ...) it is a huge advance. Before I gave up on it, I was using it to get my half-hour builds done faster than the seven minutes it takes on my Windows box, which was a first.
So, I'd recommend your friend try Panther (when it comes out) or Jaguar (today) for C++ development. I suspect he wouldn't at all be disappointed by the development experience that will come shipped with a new G5 after Panther ships.