Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

mox123

macrumors 6502
Original poster
Jul 18, 2007
259
1
Chicago
Modern Fortran is very capable, even for OOP. Modules, generics, array-slicing goodness, pointers, rich allocation primitives (is this thing allocated? how big is it? is it big enough to hold this? no, let's reallocate then). It's not how the thread started, but it is quite good for math and scientific applications. The only issue might be third party library integration, but it has strong enough interoperability with C that I think that can be mitigated.

While u are obviously a programming buff :)

but yeah...fortran doesn't have much use outside of the scientific community...it's all C and C++ now with people
 

mox123

macrumors 6502
Original poster
Jul 18, 2007
259
1
Chicago
Okay. I think I got misled by your brainbench comment earlier. I've never taken a brainbench test myself, but new applicants in our company usually do one as a "pre-screening". I thought this was the main use for it, so when you asked how to quickly increase your brainbench scores, I assumed that was so you could interview for a C++ position.

I usually only glance at these scores. If someone is sent to me because he's a "C++ expert", I have other ways of finding out.

One of my favorite questions is to ask which C++ book is currently on their bedside table, and paying attention to their response. Or ask them which book they would recommend.

I'm actually not particularly interested if someone really is a C++ expert. In fact, I'd rather they aren't afraid of admitting they aren't. I interviewed a guy who couldn't quite tell me what template metaprogramming was, but insisted that it was useless anyway so it wasn't something he'd ever needed to learn.

There are a lot of C programmers out there who think they became C++ programmers after renaming their code with a .cpp extension.


Incidentally, what would you recommend as a must-have C++ textbook and/or reference book to learn from?

i'm currently reading off from Deitel and Deitel titled "C++, How to program"....it's an old book printed in 1998 i found off my office bookshelf...i wouldn't mind though investing in a good copy of standard C++ text/reference

yeah...i'm totally not an expert in C++ and have no pretense of ever trying to become one :)
 

lee1210

macrumors 68040
Jan 10, 2005
3,182
3
Dallas, TX
Deitel and Deitel are ok, but they tend to have a heavy Windows focus, if I remember right.

For starters, I'd recommend:
Accelerated C++

Stroustrup's Book goes without saying.

For numerics, Numerical Recipes in C is available for free here:
http://www.nr.com/oldverswitcher.html

The C++ version sells on Amazon, but it isn't that different.

This also looks good:
http://www.curly-brace.com/

The D&D text is what we used in my AP CS class when i was in high school. It's decent, but I can't recommend it. I'd say the Stroustrup text is the best C++ reference, as K&R's "The C Programming Language" is to C.

-Lee
 

Sander

macrumors 6502a
Apr 24, 2008
521
67

Aww, thank you. It uses C though (while comparing the stuff learned with a few other languages at the end of each chapter).

I must say Stroustrup's book can be a little "dry". You have to read it in small bites (and chew those well).

After you've read through your first C++ book and attained your yellow belt in C++ programming, you need to get Scott Meyers books (http://www.aristeia.com/books_frames.html) which present their content in handy "items", each showing a particular pitfall or gotcha in C++ and explaining exactly how to do things right. Some say the very existence of books like this show how convoluted and horrid a language C++ is, and I'm sure even "experts" can be caught off-guard with some of these items. If you can honestly say "I knew this, and I always do the right thing automatically" for the majority of these items, you're writing production quality C++.

And then, it's time for Herb Sutter's "Exceptional C++", after which you'll probably feel you'll have to go back to your white belt :)
 

mox123

macrumors 6502
Original poster
Jul 18, 2007
259
1
Chicago
Awesome! Thanks so much for all the advice guys! People should definitely mention the side perks of owning a mac and being part of the mac community!

Been a proud member since 2003 :cool:
 

Ti_Poussin

macrumors regular
May 6, 2005
210
0
I would personnaly recommand you to use the command line until you feel really confortable with compilling many files and link them together before going to xCode.

Learn the C++, here's a good reference site:
http://www.cplusplus.com/

Learn STL (site above cover the fonctions) and if possible the Boost lib:
http://en.wikipedia.org/wiki/Standard_Template_Library
http://www.boost.org/

Learn to make your own makefile:
http://www.cs.umd.edu/class/spring2002/cmsc214/Tutorial/makefile.html
http://www.eng.hawaii.edu/Tutor/Make/

After, you may wanna learn Qt, wxWidget or event Obj-C with Cocoa to make some graphical interface.
 

lazydog

macrumors 6502a
Sep 3, 2005
709
6
Cramlington, UK
I'd definitely recommend Scott Meyers and Herb Sutter too.

Do you need to support/implement 3-D graphics? If so then you might want to look at OpenGL. Though if it's just graph plotting similar to Mathematica/Maple that you need then there will be other C/C++ libraries that you can use (sorry can't recommend any!).

b e n
 

mox123

macrumors 6502
Original poster
Jul 18, 2007
259
1
Chicago
I would personnaly recommand you to use the command line until you feel really confortable with compilling many files and link them together before going to xCode.

Learn the C++, here's a good reference site:
http://www.cplusplus.com/

Learn STL (site above cover the fonctions) and if possible the Boost lib:
http://en.wikipedia.org/wiki/Standard_Template_Library
http://www.boost.org/

Learn to make your own makefile:
http://www.cs.umd.edu/class/spring2002/cmsc214/Tutorial/makefile.html
http://www.eng.hawaii.edu/Tutor/Make/

After, you may wanna learn Qt, wxWidget or event Obj-C with Cocoa to make some graphical interface.

oh kewl...thanks so much for the online links! really appreciate it :)
 

mox123

macrumors 6502
Original poster
Jul 18, 2007
259
1
Chicago
I'd definitely recommend Scott Meyers and Herb Sutter too.

Do you need to support/implement 3-D graphics? If so then you might want to look at OpenGL. Though if it's just graph plotting similar to Mathematica/Maple that you need then there will be other C/C++ libraries that you can use (sorry can't recommend any!).

b e n

oh no...no 3-D graphics...just number crunching and probably also some data plots....i'll definitely look into it to see if there's any standard C++ libraries for these sort of things too!

thanks!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.