Deliver to DESERTCART.FI
IFor best experience Get the App
The C++ Programming Language
A**K
Excellent book as a tutorial
This book is excellent as a tutorial. I've programmed before in commercial languages for research, but had no experience with C or C++. Stroustrup introduces the subjects in a simple way at first and he gives relevant examples. For example, the first function is used on page 23. On this page you get the basic definition of a function, the basic semantics, and two examples on one paragraph. That is all you need to know about functions to understand much of the beginning part of the book. In Chapter 7, every rule about functions, their use, common errors, how to pass arguments, how to retrieve arguments, how to declare and define them, pointers to them, are described in a logical and coherent way with relevant examples. By chap 10, I wondered do function input and output arguments copy, point to or reference the corresponding arguments in the caller routine? The answers are in there in Chap 7, just where you'd expect it. Stroustrup's introduced concepts in an elementary form, especially in the tour, then later when I reviewed, I understood more. He summarizes his style when he says "Don't panic! All will become clear in time" and encourages the reader to plow through even with partial understanding and revisit later. The initial material is long enough to give you the basic concepts and way of use, but not too long to lose you in the details.The tour (chap 2 and 3) are meant to give you an overview of classes and what C++ can do. The reader is not expected to apply it until getting a more nuts and bolts grasp of the language (chap 4 to approximately 9). By the time you reach chap 7 or 8, even though the subjects of chap2 and 3 are not visited again, classes and some of the standard templates such as vector, string, cin, become clear. From chap 4 on, each subject is presented in enough detail to apply it. The discussion about Exceptions (chap 8) is a good example of how subjects are explained slowly. Stroustrup builds up the subject with the simplest case first, and give you the code right there in the text so that it is easy to understand the basics. He adds one feature at a time and gives example code, so the following features are also easy to follow. The whole idea about how to structure code beginning with 6.1 the desk top calculator and reworking it in 7 and through namespaces in 8 is another example of how concepts are built up slowly through repetition with small modification.The exercises are excellent and instructive. He goes through all the main points in them, and once you are through with that you will be able to apply each chapter's material. Understanding does require studying the few lines he gives at each time though. Those examples he picks are what you need to learn. To solve the problems, short and terse text is good, for you have less material to search through. Everything to complete them is in the book in order. The only reading ahead I needed was to look up a function which only required reading a page or two. As you practice, you will naturally read through much of the Standard Template Library discussions (for vectors, lists, streams, iterators, strings etc). By the time you figure out the exercises, you will have figured out the basic concepts. I found that the book contains nearly all the example code needed. Every time I asked how to do something I found Stroustrup gives you the example right there in the first few chapters. Rarely did I ask a question that wasn't answered in the book. That demonstrates an excellent choice of topics for learning.In summary my approach was to take a few hours with each chapter of approximately 20 pages and read it thoroughly until I felt I understood it. I referred to earlier sections as the author indicated when necessary for a reminder. I often found new meaning and more clarity in those sections. Working through most of the problems allowed me to apply or implement the example code in a way that no amount of reading could do.The book is written with mathematical precision. Much of the author's scientific contribution went to developing the language, and obviously writing compilers for it. Actually, the author has made the rules of the language relatively simple and general, especially given the language's power. Learning the language through his book, one can get the thought process that went into developing this profoundly influential language, in a way that would be difficult to get any other way. After hundreds of thousands of programmers learned C++ through this book, it is extremely difficult to find a typo or mistake.Stroustrup deliberately treats the simplest and most basic structures first so that a programmer can get started without having to understand the abstract ideas of object oriented programming. The book is not just a reference. For learning the foundations of the language, it is an excellent choice. My advice is to read it sequentially, review the "Tour" (chap 2&3), work through the exercises, and compare with David Vandevoorde's "C++ solutions".
Z**R
Best there ever will be
I get extremely aggravated by people who read a book like thisand say how terrible it is, how the examples are hard to understand,and how hard the code is to understand, etc etc... Blah blah blah. It's pretty obvious to an experienced programmer that these people clearly are not the target audience of the book. The target audience of this book is programmers who have a couple years of experience programming (at least in C, preferably in C++). Additionally, you must be able to understand some rather complex terminology, and some concepts that go well beyond the basics of just writing simple programs. You must also have a desire to learn the C++ language inside and out, leaving nothing whatsoever unclear about the language. If all you want is the basic syntax of the language and lots of handholding then I cannot imagine why you're even looking at a book by the creator of the language in the first place.That said, this is a truly amazing book. You will never, ever, ever find a more in depth description of the language, it's features and caveats, and how to make the language do what you want it to do and make programming simple in large systems. When you reach a certain point it isn't as simple as "okay let's have a class with some get and set methods here". You must have a thorough understanding of some extremely advanced features, and this book will definitely get you to that point if you put in the time. The way the explanations are worded and the examples that are given are difficult to understand because there's no simple way to explain such advanced concepts. And if you are one of the people that think there _is_ an easy way to explain such concepts in the same amount of detail, I invite you to go find an easy explanation of mathematical Field Theory or Quantum Physics.If you are smart, part of the target audience, and mature enough to handle it, I doubt you will be able to find a better book.And for those who are still convinced that simpler is better, I wonder if you can explain to me *why* overriding a function in a derived class makes all of its overloads in the base class inaccessible.
M**S
Great book, but not introductory
This is quite possibly the greatest nonfiction book ever written, which assumes that the reader already knows everything that is in it. It definitely is not introductory in nature -- the early chapters require a knowledge of topics which have not been introduced, and basic syntax is glossed over in much too fast of a fashion for someone who is not already familiar with them. The discussion on algorithms assumes knowledge of functional programming techniques.On the other hand, it does a great job of demonstrating the usefulness of nearly all of C++'s language features, providing instruction more as to the how and when to use the feature than instruction into what a given feature is, and the underlying understanding the programmer will probably need to make use of them.C++ is a large language, and before this book I had the impression that it's feature set was made with the "everything but the kitchen sink" attitude. But this books makes it seem smaller and more cohesive by indicating what type of problem domains the various features are made to conveniently express, and thus which features are useful for a given program and which can be safely ignored.I do plan on using this as a reference text, but I think it is best used by starting on page one, and then iterating through the pages one by one. It shouldn't take too long if you already know the majority of C++, but if it is painful to do this then an introductory text might be in order. Or, perhaps reading C Programming Language (2nd Edition) which is a good introductory, advanced, and reference text for the C language, would be sufficient for some people. Both that book and this one have the advantage of treating the reader as intellectual equals, who simply are not yet informed of the material being exposited.
T**R
NA
Book in excellent condition at a reasonable price
P**K
value for money
The book is in very good condition and prefer to buy this book for beginner in coding
C**N
Learning c++
Fundamental book for c++ understanding. Updated version, covering current status of c++. A book to review continuosly, deep and detailed.
C**S
Ein wirklich sehr gutes Buch über C++
Nun gut, dass Herr Stroustrup ein gutes C++ Buch schreiben kann konnte man schon erwarten. Trotzdem war ich positiv überrascht wie hilfreich ich dieses Buch empfand und wie groß der Detaillierungsgrad ist.Ich arbeite seit einigen Jahren als Software-Entwickler vornehmlich mit C++, meist mit der Visual-C++ Umgebung . Ich habe viel Literatur über C++ gelesen insbesondere aus der "C++ In-Depth Series". Natürlich ist letztere noch um einiges tiefer, die wichtigsten Regeln und hilfreichen Konventionen für die Codierung mit C++ sind in dem Buch von Herrn Stroustrup aber auch alle erklärt (z.B. Prevent Copying, sinnvoller Einsatz von namespaces, ...).Alle wichtigen Themen für die Programmierung mit C++ sind beschrieben. Auch das (meiner Meinung nach in anderen Büchern öfter vernachlässigte) Thema rund um Quellcode-Dateien, Kompilierungseinheiten und Linking findet sich in einem eigenen Kapitel.Jedes Kapitel endet mit einer Zusammenfassung der wichtigsten Tipps und sinnvollen Konventionen die in dem Kapitel beschrieben wurden. Dies und die Übungsaufgaben (zu denen es im Buch aber leider keine Musterlösungen gibt) empfand ich als sehr hilfreich.Ich denke, dass Buch ist nicht geeignet für absolute Anfänger, die C++ lernen wollen. Dafür gibt es bessere Literatur. Absoluter C++ oder OO-Profi muss man für die Lektüre des Buches aber auch nicht sein. Die grundlegenden Ideen, vor allem eben auch die Konzepte der objektorientierten Programmierung sind sehr schön und gut nachvollziehbar erklärt.Für mich (als Erfahrenen, aber nicht Super-Crack) war das Buch eine Mischung aus Bestätigung vieler Konventionen die man als Erfahrungen als C++-Entwickler gesammelt hat und einiger neuen Einsichten.Ich empfehle das Buch jedem der sich ernsthaft mit C++ beschäftigt. Irgend wie hat man das Gefühl dieses Buch unbedingt einmal gelesen haben zu müssen :-)
G**O
E' un titolo Fondamentale, un MUST per programmatori.
Libro arrivato in anticipo rispetto ai tempi di consegna, imballaggio buono.E' in inglese, consiglio soprattutto di comprarlo in inglese, anche se le prime volte può essere un pò difficoltoso, nel campo dell'informatica conviene saper apprendere direttamente dall'inglese.
Trustpilot
1 month ago
3 days ago