|
| Login | Sign up | My Wish List |
![]() | Standard C++ IOStreams and Locales: Advanced Programmer's Guide and Reference by Angelika Langer, Klaus Kreft ISBN-10: 9780201183955 ISBN-10: 0-201-18395-1 ISBN-13: 9780201183955 ISBN-13: 978-0-201-18395-5 Hardcover 2000-02-10 Addison-Wesley Professional Find Lowest Price | |
Editorials | ||
Amazon.com Aimed at the advanced C++ programmer, Standard C++ IOStreams and Locales explains the internals of how C++ streams work and provides support for internationalization. It explains the inner details of architecture and design of these important built-in C++ objects, and it's a reference to all relevant classes and methods. This book effectively reveals the inner workings of the entire stream class library in today's Standard C++ in two ways: First, it explains the design principles and internal function of these stream classes, whether for simple console or file I/O or for more advanced topics like memory streams. There's coverage of I/O basics (manipulators, stream flags, and other built-in features) for everyday programming with streams. The book also does an excellent job of delving into the nitty-gritty details of these classes (which most of us know only on the surface). Examples include a custom date class that will cooperate with existing stream libraries and create new "facets"--output rules that customize data for particular languages or "locales." Besides an in-depth guide to what streams do by default and some hints for adding your own classes to work with them, the text also contains over 200 pages of reference material on every C++ stream and locale class, organized by header files. (These sections will arguably be the most useful for the working C++ developer.) Like the support for template classes, the Standard Library's support for streams is powerful but until now, anyway, not easily accessible to ordinary programmers. For anyone who already knows the fundamentals of streams and is seeking to do more, this title fills a useful niche. It is an authoritative and densely packed source of technical detail on built-in C++ classes. --Richard Dragan Topics covered: Standard C++ predefined streams, input and output operators, manipulators, locale basics, formatted input, stream state flags, file streams, in-memory I/O, stream positioning, synchronizing streams, stream class architecture, stream buffer classes, character types, wide character support, stream and stream buffer iterators, custom stream classes for user-defined types, inserters and extractors, user-defined manipulators, customizing stream and stream buffer classes, internationalization and localization, standard facets, user-defined facets, stream and locale class reference. | ||
Reviews | ||
Too many redundant comments and words. The authors has excellent knowledge of the subject, but that is sadly not of benefit for this book, on the contrary it is its problem. The book seams to be written in the following way: 1. Rewrite iostreams header files as english text instead of c++. 2. If at any point, you can make a long remark about some detail, do so. The longer the better. Usually when an author it trying to make a book as thick as possible, it is done by adding redundant words to make it easier to read, not in this case, the sentenses have no flow, its just a large collection of words. I would recommend reading this book to anyone implementing the subject from scratch (for his own compiler) and to people stranded on desert islands. The rest of us can read existing header files, contemplate them and still have time to spare. Life is too short for spending time reading the same thing i just read, over and over again. | ||
Amazing book The title of the book says it all. This book delivers anything you could possibly want to know about streams and locales. The book might seem dry at times but im so glad I muddled through this book the first time; i cant imagine programming with out it! You will be able to write flawless file I/O thats easily extensible and maintainable. All with less code than the C-style I/O. Almost all C++ books teach C style I/O for some reason, and you will cringe at that after you absorb this book. You will be able use your new code with the STL seamlessly giving you even more robust and easy to maintain code. I still get giddy when i see how elegant and flawless your code can be when you use the standard library (the non-depracted part) to the fullest. The auther points out that some example code may not work on MSVC++ 6.0. Well, thats what i use and found little code i cant compile without modifications; and the code you cant compile you will be able to figure out good workaround right away if you know what VC 6.0 cant do; even I found good workarounds. You may think Iostreams and locales arent worth knowing about if you program windows apps. This is wrong. This book is good in so many ways, even the appendiecs were great source of new info. I still reach for this book at least once a week. This is my best buy period. | ||
The best, and only, comprehensive IOStreams book When people think of C++ standard libraries, they think of the STL. There are dozens of books on the STL, and everyone is taking advantages of its features to get good algorithms that don't reinvent the wheel. As this book points out, IOStreams is perhaps the most-overlooked part of standard C++. It has just as many features as the STL, and can help you write less, better code if you take advantage of it. If you have ever spent a few days writing a buffer class, you didn't have to; The IOStreams streambuf is comletely extensible and customizable. Even better, IOStreams is a complex, high-performance library written by a C++ expert from Bell Labs. Most of us C++ programmers don't think about how IOStreams works, other than to write '<<' a few times. OO design doesn't get any better than that. This book is also an excellent case study on the IOStreams library, touching on the proper use of multiple inheritence, and the benefits of static type checking. If a library can be this efficient and extensible, while being as easy to use as typing '<<', there is something every C++ programmer can learn from its design. The book is even endorsed by Jerry Schwarz, the man who invented IOStreams, and has a forward written by him. If you own two STL books, but not this book, I think you've made a mistake. This should be the third C++ book you buy, after a language reference and STL reference. It is that useful and interesting. | ||
Hidden Treasures The reason why I bought this book was the wish to learn more about the C++ Standard. When I held the book in my hand the first time I was not shure if it would be worth the time reading it. It seemed only be useful for a DOS - like software, not for my GUI problems. So I was very surprised in a good sense to read about ideas how to use IOStreams for GUI - internationalization (I18N), described on pages 175 and 225. The IOStreams library, as it is described by the authors, is a better answer to my I18N - problems than all other three GUI - libraries I know. It offers more flexibility. An other treasure was the techniqe of two-phase polymorphic dispatch described in this excellent book. This technique allows me a much more flexible design than in the past. If the customer asked for new features I often had to change my class hierarchy (and all classes in it) by adding new virtual functions. It is cumbersome if it is code of a library. The two-phase polymorphic dispatch shows an alternative. The third (but not the last) treasure are the appendices. They are a good reference for C++ refinements. The thought I perhaps would not have read this book worries me, I had missed a chance. Many thanks to the authors writing such an excellent book. | ||
Unbelievable! I've never seen a more thorough book. It's amazing just how much information there is on one topic. If you really want to use the iostream library, you have to have this book. | ||