🔌 Power Up Your Grooming Game!
The UPBRIGHT2-Prong 5V AC/DC Adapter is a versatile power supply designed for Sminiker Dog Pet Hair Clippers, ensuring reliable performance with global compatibility and essential safety features. With a 30-day refund policy and a 24-month exchange guarantee, this adapter is the perfect companion for professional pet grooming.
M**R
C++ is Better with C++11
I programmed professionally for 14+ years primarily in Microsoft languages but never touched C or C++. Began looking at some simulation technologies in 2009 and 2011 and ramped up on C++98 and C. Learned them well enough to produce results. C++11 came out and I did not give it much thought as I had already invested much in an established version (including the STL for C++98 and C-Style programming). After significant time reviewing books and materials in the context of C++98 from Nicolai Josuttis, Bjorn Karlson, and others, starting again with C++11 was not desirable. As C++ versions tend to be long lived and stable, I think that is still a good perspective.I have seen articles about improvements to rvalue references in C++11 and other statements from others regarding lambdas in C++11. In other places I have seen statements about how C++11 can improve the way code is written. None of that convinced me that there was an urgent need to understand C++11. Then I read a book by Artur Moreira called SFML Game Development in which he adopted many features from C++11. I am not a game developer, just researching cross platform graphics. Artur Moreira used C++11 quite effectively in his book and I thought that perhaps I should plan on reviewing C++11. When I saw several conventions of which I was unfamiliar while reading Artur Moreira's book, I decided it was time to review C++ all over again.C++11 introduces some useful concepts such as universal initializers, reference counting, and other concepts. Some of us know these concepts from our use and exposure to other languages. Microsoft C# has the concept of a foreach applied to interfaces of IEnumerable. It is similar in C++11 but presented differently. Rather than a foreach keyword with operands divided with an in operator, you have a for keyword with a : operator applied to a type with a pair of begin/end functions. I understand these concepts and can accept the syntax, but it aids productive use of these concepts to understand how they function in a concrete way as well as the philosophy associated with their use in the context of C++11.That brings us to Bjarne Stroustrup who wrote this book, C++ Programming Language 4th Edition. If anyone is going to explain the philosophy of C++11, he would be the top candidate. He invented C++. There are examples in the past of inventors who could not explain well their inventions, but Mr. Stroustrup is the exception. Perhaps due to his long, long history of writing and lecturing, in addition to his active participation in technology he explains theory and reality quite well. I have read some of his books from 10 or 20 years ago such as the Design and Evolution of C++ and maybe an earlier version of this book. I found his older books difficult to read and very obtuse. His writing in this book has shifted 360 degrees in which his words are in a fresh, contemporary style that is clear and candid.The most important benefit you gain from reading Bjarne Stroustrup's book is that you gain the perspectives, best practice, and preferred conventions for C++11. He gives advice and calls out common errors and where you might want to focus to have the code come out in a better way. You are NOT learning what is new in C++11 versus C++98. Instead, he is presenting C++ in the way it is today. This is important because you are not jumping back and forth conceptually between C++98 and C++11. He shows C++ in its new form in a complete and coherent way. This way, you can relearn C++ from a book that ties all the most appropriate parts of the language from start to finish. You can still keep the old ways in the back of your mind if you ever need them but he does talk about these things when necessary such as C-style casts (which I still use) versus using the bracket notation to convert type.His tone is very appealing. He does not speak about C++ dogmatically nor does he speak as if all is perfect. Rather, he proceeds through a presentation of C++ that unwaveringly emphasizes the right choices and considerations while admiting when some recommendation may not hold. The best example of that is in his discussion of the universal initializer. He makes an excellent case for the universal initializer, which I plan to use to maximum effect when I finally decide to enable C++11 compiler flags, but he also reveals ways in which the "universal" initializer may not be so universal. That candor makes the text much more valuable as it prepares one's expectations for what they may realistically expect in conforming compiler implementations of the C++ language.Again, I admit that I did not enjoy Mr. Stroustrup's books from 10 or 20 years ago. I reluctantly accessed this book because after a 1 year break from writing any C++ in my leisure time, I needed to look up some things. I thought I would just use this book plus Nicolai Josuttis' latest book on the STL as reference. I am still writing C++98 centric code and so the books as reference was somewhat less useful in some areas. However, as I referred more to this book from Bjarne Stroustrup, the writing style was so different and the explainations so much more clear that I was much more inclined to stop what I was doing and review the text in more detail. I decided now is the time to relearn C++ as there is now a guide that shows the way from start to finish.On that note, his book is a great manual on software development today. Even if you have experience, he describes a set of ideas in a way that if you thought about them more, you would produce much better software. He goes into the different types of programming styles (OO, procedural, generic, etc) and into low level versus high level providing presenting his point of view out of his extensive experience in languages, programming, and technology. He spends a tremendous amount of time on abstraction, structure, and code elegance through proper code definition. After reading his book you will definitely advance in your perception of software code.Me ... I am not a C++ programmer but someone with a professional background in software code who moved into C++ occassionally in my spare time in order to understand certain things in computer technology at a deeper level. C++ is in my toolbelt and I thank Bjarne Stroustrup for making it a more useful tool by way of understanding. I still do not recommend C++ for normal IT work, websites, and line of business systems better served by quick shift tools like Microsoft .NET and Java applied to frequently evolving circumstances. Rather, C++ is a language you can learn if nothing else but to better your cognition in the construction of code and the design of systems defined by code. The design and logical insights in this book are hugely valuable and he writes in a way where the concepts presented are digestable if you have any programming experience. You just need time and attention. C++ seems to have evolved well. It feels cleaner and more streamlined than even Microsoft C#. Admittedly some aspects of C++ remains inaccessible to entry level programming as part of a larger team and that is okay. Such things are necessary tools for more finely calibrating code in ways not needed in conventional IT (web systems, databases and batch jobs). I once perceived C++ as a low level tool with high level mechanisms. Bjarne Stroustrup has changed my perspective to see C++ as potentially a master language that works best when you understand it the right way.
P**O
A bargain
It is indeed a book in a very good condition for the price it was sold. Although, it is the first printing of the hardcover edition, hence, it contains documented errata.It has a minor wear at the top (see photo) which I am not sure if it was before packaging or if the courier did not handle with care. Regarding the packaging, it was a thin bag without cushion prone to damage the item.The seller responded me promptly when I had an inquiry regarding the third-party shipping.
J**W
Not the best read, but contains the best info.
Once you get past the obligatory introduction, this book is pretty much broken down into three sections (there are actually four in the book, but two of them are related, IMO). The first section (Chapters 2-5) is a crash course on C++... what Mr. Stroustrup calls "a tour of C++." *IF* you are already a seasoned programmer--and I'm talking about years of structured development in a professional environment--then this first section will bring you up-to-speed with C++ in minimal time. Knowing C at the start helps, as the basic syntax, operators, statements, etc are common to both languages, but it is not a necessity. The language with which you're familiar isn't as important as having a sufficient background and experience. I personally found this first section invaluable, as it allowed me to "learn" C++ in one weekend... at least to a point where I could pass two separate C++ assessments the following week and land job interviews because of it. [I have 24 years of C experience under my belt but am brand new to C++.] However, if you don't have the necessary background before beginning, this section will get you lost real fast, and will end up discouraging you more than helping you! You have been duly warned.The next section (Chapters 6-29) is SUPPOSED to be a structured tutorial section, starting at square one; however, it is anything but! This section assumes you have read--and more importantly, thoroughly understand--the "tour" provided in the first section. This second section, unfortunately, ends up being more "lawyer speak" on C++ than an actual tutorial (IMHO). Now granted, you need to know the rules in order to create valid C++ programs; but come on! There's got to be a better way to present the subject matter than simply throwing a bunch of obscure rules at the reader. In addition to the "lawyer speak", I also found this section a little too "preachy" for my taste at times. However, in spite of my criticisms, I found this section to be the ultimate supplement to Lippman's " C++ Primer (5th ed) "; i.e. after reading Chapters 2-5, I used Lippman's book as a formal tutorial then came back to this section to take my skills and knowledge to the next level. Mr. Stroustrap divides this 2nd section into two parts, The Basics (types, pointers, functions, etc) and Abstraction Mechanisms (classes, constructors, hierarchies, templates, etc).The final section (Chapters 30-44) examines the Standard Library. The Standard Library is just as important and integral a part of the C++ language as the language itself, akin to the C Standard Library but much more far-reaching. I remember reading somewhere (perhaps it was even this book) that the library description takes up 2/3 of the official C++ specification! The fact that the library is part of the C++ specification implies that its contents are fully supported, and hence presumably the most efficient implementations available... to a degree. [Meaning that the most efficient "general" solution is not necessarily the best solution for one's particular application.] Understanding what's available in the Standard Library and how to utilize it is obviously an important aspect of the language, and this last section is a valuable reference; but that's all it is (i.e. a reference vs a tutorial). Fortunately, several hard examples of the Standard Library are used throughout the earlier portions of the text, but it only scratches the surface.Mr. Stroustrap created C++, so it shouldn't come as a surprise to anyone when I say that this is the definitive book on the subject. However, it is not necessarily the best book from which to learn C++. That said, I found the "crash course" in Chapters 2-5 invaluable, and I am grateful that he included it.So, in summary, if you want to start from scratch and take a traditional structured approach to learning C++, I would suggest you seek an alternative book. The Lippman book I mentioned earlier is great, and I've seen lots of rave reviews about another of Mr. Stroustrup's books, " Programming: Principles and Practice Using C++ (2nd ed) "If you're an experienced professional who needs to come up to speed with C++ in minimal time, then Chapters 2-5 are a good way to do it; but you might want to investigate Mr. Stroustrup's other book instead, " A Tour of C++ ". [Note, I have not read that book and cannot comment on its contents, but I assume it's a more detailed & structured version of Chapters 2-5 in this book.]In both cases, beginner or professional, this book is THE ultimate reference source for all things C++.Good luck in your C++ journey!
Trustpilot
2 months ago
2 days ago