Chuck Allison
by Scott Meyers, September 23, 2008, 16 comments 16 comments
In this article, Scott Meyers describes a technique that enables the specification of arbitrary combinations of user-defined code features on a per-function basis and that detects violations of feature constraints during compilation.
Sponsored Links
by Howard E. Hinnant, Bjarne Stroustrup, and Bronek Kozicki, March 10, 2008, 63 comments 63 comments
Rvalue references is a small technical extension to the C++ language. Rvalue references allow programmers to avoid logically unnecessary copying and to provide perfect forwarding functions. They are primarily meant to aid in the design of higher performance and more robust libraries.
by Greg Colvin, February 8, 2008, 54 comments 54 comments
Computers make life easier because they're so fast, right? Well, yes and no. Do you write efficient code? The author reveals some disconcerting inefficiencies lurking in commonly used software and development practices.
by Thomas Becker, October 15, 2007, 32 comments 32 comments
The author discusses how the use of generic programming in C++ can lead to conflicts with object-oriented design principles. He demonstrates how a technique known as type erasure can often be used to resolve these conflicts. An in-depth example is presented: any_iterator, a type-safe, heterogeneous C++ iterator.
by Fedor Pikus, October 1, 2007, 20 comments 20 comments
C++ is a language for writing efficient high-performance programs, and bit manipulations are bread and butter of many such programs. This article presents a solution to the problem of constraining bit operations to allow only safe and legitimate ones, and turn all invalid bit manipulations into compile-time errors.
by Matthew Wilson, September 18, 2007, 2 comments 2 comments
Have your cake and eat it, too, with STL extensions. In this chapter extract from his latest book, Matthew Wilson shows you how to take full advantage of the STL Iterator abstraction, without sacrificing block-transfer efficiency of Scatter/Gather I/O memory.
by Guy Peleg, September 14, 2007, 6 comments 6 comments
Object factories provide a useful abstraction for object construction. A special problem with object factories must be considered, however, when subscribing template classes with object factories. This article presents an overview of the "subscription problem" along with several solutions.
by Greg Colvin, July 17, 2007, 1 comment 1 comment
This article is a personal, behind-the-scenes look at BoostCon '07 from a veteran who has seen it all.
by Anand Shankar Krishnamoorthi, July 11, 2007, 11 comments 11 comments
This article presents a flexible and efficient variation of the Visitor design pattern in C++ that accommodates arbitrary argument and return types.
by Eric Niebler, June 26, 2007, 11 comments 11 comments
Couldn’t make it to BoostCon'07, the inaugural annual Boost Conference? Here’s the next best thing--a lively trip report from one of its presenters.
by Boris Kolpackov, May 5, 2007, 20 comments 20 comments
XML processing has become a common task that many C++ application developers have to deal with. This article introduces XML Data Binding and shows how it can simplify XML processing in C++.
by Paul S. R. Chisholm, February 26, 2007, 12 comments 12 comments
"Pure virtual function called" is the dying message of the occasional crashed C++ program. What does it mean? This article covers all of the possible explanations.
by Eric Niebler, October 17, 2006, 68 comments 68 comments
The C++ standardization committee is hard at work standardizing threads for the next version of C++. Some members recently met to discuss the issues, and The C++ Source was there. Read on to learn what the world’s leading experts on concurrency are planning for C++0x.
by Thomas Guest, October 9, 2006, 9 comments 9 comments
This article investigates the complexity guarantees made by the C++ Standard Library. By analyzing and measuring the performance of alternative solutions to the same problem it shows how this library allows us to write code that is both simple and efficient.
by Scott Meyers, September 6, 2006, 25 comments 25 comments
In this article, Scott Meyers shares his picks for the five most meaningful Aha! moments in his involvement with C++, along with why he chose them.
by Scott Meyers, August 30, 2006, 36 comments 36 comments
In this article, Scott Meyers shares his picks for the five most important people in the history of C++, along with why he chose them.
by Scott Meyers, August 23, 2006, 18 comments 18 comments
In this article, Scott Meyers shares his picks for the five most important software packages in the history of C++, along with why he chose them.
Advisory Board
David Abrahams
Andrei Alexandrescu
Matthew Austern
Walter Bright
Steve Clamage
Greg Colvin
Jim Coplien
Stephen Dewhurst
Neil Harrison
Kevlin Henney
Howard Hinnant
Andrew Koenig
Angelika Langer
Nathan Myers
Eric Niebler
Thorsten Ottosen
Thomas Plum
Dan Saks
Jeremy Siek
Bjarne Stroustrup
Herb Sutter
Matthew Wilson
Subscribe to be notified of new articles published in The C++ Source via RSS.
Browse all articles from The C++ Source.

The C++ Source is a trademark of Artima, Inc.