Imperfect C++: Practical Solutions for Real-life Programming

Front Cover
Addison-Wesley, 2005 - Computers - 588 pages

Imperfect C++

C++, although a marvelous language, isn't perfect. Matthew Wilson has been working with it for over a decade, and during that time he has found inherent limitations that require skillful workarounds. In this book, he doesn't just tell you what's wrong with C++, but offers practical techniques and tools for writing code that's more robust, flexible, efficient, and maintainable. He shows you how to tame C++'s complexity, cut through its vast array of paradigms, take back control over your code--and get far better results.

If you're a long-time C++ developer, this book will help you see your programming challenges in new ways--and illuminate powerful techniques you may never have tried. If you're newer to C++, you'll learn principles that will make you more effective in all of your projects. Along the way, you'll learn how to:

Overcome deficiencies in C++'s type system

Enforce software design through constraints, contracts, and assertions

Handle behavior ignored by the standard-- including issues related to dynamic libraries, static objects, and threading

Achieve binary compatibility between dynamically loading components

Understand the costs and disadvantages of implicit conversions--and the alternatives

Increase compatibility with diverse compilers, libraries, and operating environments

Help your compiler detect more errors and work more effectively

Understand the aspects of style that impact reliability

Apply the Resource Acquisition Is Initialization mechanism to a wide variety of problem domains

Manage the sometimes arcane relationship between arrays and pointers

Use template programming to improve flexibility and robustness

Extend C++: including fast string concatenation, a true NULL-pointer, flexible memory buffers, Properties, multidimensional arrays, and Ranges

The CD-ROM contains a valuable variety of C++ compilers, libraries, test programs, tools, and utilities, as well as the author's related journal articles. New and updated imperfections, along with software libraries and example code are available online at http: //
(c) Copyright Pearson Education. All rights reserved.

From inside the book

What people are saying - Write a review

We haven't found any reviews in the usual places.


PART ONE Fundamentals
Object Lifetime
Resource Encapsulation

34 other sections not shown

Common terms and phrases

About the author (2005)

MATTHEW WILSON is a software development consultant and creator of the STLSoft libraries. He writes a bi-monthly C/C++ Users Journal column on integrating C and C++ with different languages and technologies, as well as an online column for C++ Experts Forum. He has over a decade's experience developing with C++. Currently based in Australia, Wilson holds a Ph.D. from Manchester University (UK).

Copyright Pearson Education. All rights reserved.

Bibliographic information