Visual C++ 5?! Isn’t version 6 out? Why should you even give this title a second look? I’ll give you two reasons: This is one of those rare books that can serve equally well as both introduction and reference and, face it, Visual C++ programming hasn’t changed all that much between versions 5 and 6.

Visual C++ 5: The Complete Reference (Chris H. Pappas and William H. Murray, III, Osborne/McGraw-Hill, ISBN: 0078823919) is divided into 26 chapters and six sections. Each section has a particular theme, such as object-oriented programming (section 4) or Microsoft Windows programming (section 5). Each chapter focuses on a particular aspect of the section topic and includes ample source code, where applicable. The authors do a nice job of separating topics that pertain solely to C++ for those who don’t care about OOP.

Those new to C or C++ will find the first third of the book extremely useful, as the authors exhaustively cover C’s syntax and programming constructs: everything from declaring variables to overloading class member functions. Particularly useful are the lengthy chapters on pointers and preprocessor directives, difficult concepts for those coming from other languages. Readers with some experience will appreciate the later sections, which discuss Microsoft Foundation Classes (MFCs), object linking and embedding (OLE), and even ActiveX programming, yet they’ll still be able to use the earlier sections as a reference.

This tome still has a place on my bookshelf; it’s just never there because I’m constantly using it. I’m horrible at remembering syntax, so Visual C++ 5: The Complete Reference is always by my side when coding on my Linux box, where I don’t have an IDE. The book is crammed with useful information. In fact, I often continue to read for pages after I find whatever answer I was seeking, learning something new or rediscovering something I had forgotten each time I turn a page.

Even though it’s aimed at Visual C++ programmers and its title is a release out of date, any C or C++ programmer should own a copy of this book for its reference value alone. If you find yourself doing MFC programming or needing a little help getting the most out of Microsoft’s IDE, well, you can just consider that a bonus.