Articles

by Matthew Wilson, April 8, 2005 12 messages
This article is an excerpt from Matthew Wilson's recently-published book, Imperfect C++, Addison-Wesley, 2004.
by Eric Niebler, February 17, 2005 7 messages
Plowing through some devilish details of template argument deduction, the conditional operator and the macro preprocessor, Eric develops a robust FOR_EACH iterator. Whether you're using arrays, strings, or containers, this one does it all.
by Herb Sutter and Andrei Alexandrescu, November 19, 2004 1 message
The C++ Source is pleased to present an excerpt from Herb and Andrei's new book, C++ Coding Standards: 101 Rules, Guidelines, and Best Practices (Addison-Wesley, 2005). More than just style guidelines and "gotcha" warnings, this book clarifies the idioms and practices that pertain specifically to successful C++ software. Even better, you can't avoid deepening your mastery of the finer points of C++ as you read. This is the singularly authoritative Writ of Common Wisdom for the entire C++ development experience.
by Bjorn Karlsson and Matthew Wilson, November 6, 2004 9 messages
Trampling roughshod over the global namespace (and all other namespaces) with the macro preprocessor is one of the least friendly things you can do in C++. Why, then, is it the case that many popular APIs do exactly that? The authors look at this nasty problem, and demonstrate a simple technique that can be used to obviate it, and be good C++itizens.
by Michael Jeronimo, October 5, 2004 2 messages
UPnP network technology allows personal computer and consumer electronics devices to advertise and offer their services to network clients. Many companies and standards organizations view UPnP as the technological foundation of the digital home, enabling innovative usage models, higher levels of automation, and easier integration of devices from different manufacturers. In this article, Michael Jeronimo provides an introduction to UPnP technology, reviews the protocols that comprise UPnP, and explains the various elements of a UPnP device.
by Bjorn Karlsson and Matthew Wilson, October 1, 2004 36 messages
Welcome to the first installment of Smart Pointers, a monthly- ish column written exclusively for The C++ Source. Here, two seasoned [1] programmers—Bjorn Karlsson and Matthew Wilson—carefully dissect C++ idioms, tricks, and power techniques. To make up for the fact that these are very serious topics, we shall occasionally expose you to really crummy programming jokes, too. Now, who said there was no such thing as a free lunch? In this instalment the authors update The Law of The Big Three, and explain which of the three magic member functions is often not needed.
by Chuck Allison, September 26, 2004 82 messages
C++0x is under construction. Get your licks in while there's still time.
by Matthew Wilson, September 13, 2004 2 messages
STL meets glob(): Power, robustness, and genericity without sacrificing efficiency.
by David Abrahams and Aleksey Gurtovoy, August 23, 2004 9 messages
This article explains how to define and use metafunctions, the compile-time equivalent of functions, and introduces the Boost Metaprogramming Library.
by Bjorn Karlsson, July 31, 2004 17 messages
Learn how to validate objects in a boolean context without the usual harmful side effects.
by John McClain, June 29, 2004 3 messages
Secure large-scale Java distributed computing is at the heart of the 2.0 Jini release. Every aspect of building a secure distributed computing environment is configurable in Jini. However, that freedom introduces a new set of choices Jini developers and service deployers must make. To ease that complexity, Jini 2.0 introduces a service configuration model. Instead of the configuration language du jour - XML - the Jini model uses Java objects to configure complex services and their clients. This article provides a tutorial on using the Jini service configuration model, and also illuminates the decisions by the Jini architects to rely on objects, rather than on a document model, for service configuration.
by Frank Sommers, June 29, 2004 1 message
This week, Artima launches a new Zine, the Journal of Spontaneous Networking. This editorial article introduces the Journal, and explains its subject matter.
by Greg Colvin, June 21, 2004 22 messages
Veteran developer Greg Colvin traces the evolution of C, C++ and Java with an eye to a better future.
by Matthew Wilson, June 21, 2004 Submit comment
This article shows how to easily process UNIX-style directory entries as STL sequences. Copyright © 2004, Matthew
by Chuck Allison, June 21, 2004 3 messages
Good Things are happening in the C++ world.