Best C++ Reference: Schildt vs. Josuttis?

Started by
3 comments, last by Ziphnor 22 years, 4 months ago
Having i a few hours of free time while otherwise slaving away at my uni. project, i thought id ask people which C++ Standard library(ie, not only STL!) reference they think is best: Schildt , C++: The Complete Reference OR Josuttis, The C++ Standard Library: A Tutorial and Reference Schildts is a little older than Jossutis, and takes up about 300 more pages and costs approx. half of the Jossutis book. I was just wondering which was the most complete, and most reference like of the two?(ie with reference like i mean similar to a unix man page for C a function, short explanation of syntax and usage thats it. Which is again similar to Java API specification). I dont want a language syntax, i just want a (standard) library reference, and its pretty hard to tell if a book is a REAL reference, a tutorial in disguise, or spends hundreds of page on explaining basic C++ language syntax Even looking at the index/contents doesnt really show how the book is structured. My big problem is that i cant find the books in local bookstores so if i should buy one id would have to be from Amazon or similar. Im so obsessed with a reference, because i already know, for example, what the datastructures in the STL are and how they should be used, i just dont know the syntax for using them(in C++).(as opposed to the C++ language syntax, which i DO know) Thanks for any feedback. PS: I asked about something similar a while ago, but im pretty pedantic about buying books
Advertisement
Josuttis says ''tutorial'' quite clearly in the title, so expect it to be half tutorial and half reference (which it is). If you only want the syntax, you may as well just download the docs from the SGI STL site (see my signature below).

[ MSVC Fixes | STL | SDL | Game AI | Sockets | C++ Faq Lite | Boost ]
The problem is that the SGI site only covers the STL, not the rest of the standard library.(for example streams and string stuff).
Anyway, its nice to have a good book to things up in. Actually a few conscise explanations would probably do me good( saying anything else would be pretty arrogant , even some very quickly accessible syntax would probably be okay, the essential issue is which of the books is best suited for looking things up quickly.
The perfect reference book for Java is the ''in a Nutshell'' series, they give the syntax/usage, and expands a little on the sometimes VERY short explanations in the Java API specs, which is the kind of reference i usually find handy.

And as to the Jossutis book, i know it does say tutorial, but at least it doesnt really cover syntax alot.
Ok. Josuttis is a ''tutorial'' but it''s a tutorial for the standard library, not for the language. It shows you how to use the features, not what a variable is or any of that. Possibly chapters 2 and 3 will be wasted on you, but that''s all. I find the sections on the containers, algorithms and iterators to be a useful reference, which I now use instead of the SGI docs. Similarly, the string and stream chapters are useful, although it''s unfortunately patchy on how to derive your own stream classes. And the internationalization chapter seems to be ok, even though I''ll probably never use it.

Here''s an example of the ''quality'' of the reference material in Josuttis: you decide for yourself if it''s too patronizing for you or not:

void list::remove(const T& value )
void list::remove_if(UnaryPredicate op )

- remove() removes all elements with value value
- remove_if() removes all elements for which the unary predicate op(elem) yields true.
- Note that op should not change its state during a function call. See Section 8.1.4, page 302, for details.
- Both call the destructors of the removed elements.
- The order of the remaining arguments remains stable.
- This is the special version of the remove() algorithm, which is discussed on page 378, for lists.
- T is the type of the container elements.
- For further details and examples, see page 170.
- The functions may only throw if the comparison of the elements may throw.
- Provided by lists.


[ MSVC Fixes | STL | SDL | Game AI | Sockets | C++ Faq Lite | Boost ]
Thanks, that seems pretty much like the kind of reference description i was looking for.
Thanks for taking the time to find/make an example.

This topic is closed to new replies.

Advertisement