Best book for self-learning C++?

  • Thread starter Thread starter Zeuge
  • Start date Start date
Then there is a group that has never programmed before. They have then to learn what a variable is etc. etc. and we cannot assume anything. My advice is to learn C first, at least the essential and future-proof syntax of Kernighan&Ritchie. Then the move to C++ is less of a shock.

That's one way. There are good books on C like Kochan's "Programming in C." Or the book by Prata, "C Primer Plus." But it's also possible to start straight with C++, provided the book does some hand-holding. One such is the book by Gaddis, "Starting Out with C++." The current edition is pricey, but earlier editions (e.g., the 4th) are floating around in the used-book market and can be picked up for a song.
 
That's one way. There are good books on C like Kochan's "Programming in C." Or the book by Prata, "C Primer Plus." But it's also possible to start straight with C++, provided the book does some hand-holding. One such is the book by Gaddis, "Starting Out with C++." The current edition is pricey, but earlier editions (e.g., the 4th) are floating around in the used-book market and can be picked up for a song.

Thanks for the heads-up.

One issue what almost all beginners have is the distinction between compiler and linker errors. There's a handful of things that hold up novices big time if they are learning on their own.

There was a book by Broadie on Forth way back and he had a great way of explaining things.
 
Would anyone of you recommend learning C# over C++? Is C++ going to be the primary language for the next 5+ years or are people turning more to C#? I've heard conflicting stories.
 
The gist I've got is that C# is easier and cleaner and therefore preferable to C++. On the other hand, I've heard C++ is more powerful and so widespread that it will be the predominant language for a while to come. I don't know either so I would just like to know what language you guys would recommend learning. I know VBA and some python.
 
I taught myself the language using "C++ How to Program" by Deitel and Deitel. This is a good place to start if you are brand new to C++. Once you are comfortable with the basics, I would suggest moving on to "Design Patterns and Derivatives Pricing" by Joshi or "Introduction to C++ for Financial Engineers: An Object Oriented Approach" by Duffy.

You could also simply start with the Deitel and Deitel book and then start coding up some of the models in Haug's "Option Pricing Formulas". This second route would help you building up some experience with the language. Haug's code is VBA, and the key parts should be easy and translate into C++. In a lot of cases he provides some sort of number (value, delta, gamma, etc.) to check your code against.

EDIT: I would recommend signing up for a O'Reilly's online bookshelf, Safari. If you fly through programming and finance books like I do, you'll save yourself a lot of money. O'Reilly is known for their tech oriented books, but the site seems to be adding more and more financial books recently.
 
I taught myself the language using "C++ How to Program" by Deitel and Deitel. This is a good place to start if you are brand new to C++. Once you are comfortable with the basics, I would suggest moving on to "Design Patterns and Derivatives Pricing" by Joshi or "Introduction to C++ for Financial Engineers: An Object Oriented Approach" by Duffy.
I have one main recommendation: "Thinking in C++" by Bruce Eckel, from there you can move to the Meyer's books. If you want to learn applications in Finance, I think Joshi is the by far one of the best.

You could also simply start with the Deitel and Deitel book and then start coding up some of the models in Haug's "Option Pricing Formulas". This second route would help you building up some experience with the language. Haug's code is VBA, and the key parts should be easy and translate into C++. In a lot of cases he provides some sort of number (value, delta, gamma, etc.) to check your code against.

I would recommend against this because you will probably end up learning how to write VBA in C++. Actually, in the best case scenario you will learn how to write C in C++. In the worst case scenario you will end learning how to write VBA (or FORTRAN) in C++. You won't learn any object oriented programming just how to hack code away.
 
Back
Top Bottom