This article is an excerpt from Matthew Wilson's recently-published book, Imperfect C++, Addison-Wesley, 2004.
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 comment
This is an excerpt from the authors' new book of the same title. More than just style guidelines and "gotcha" warnings, this book clarifies the idioms and practices that pertain specifically to successful C++ software. 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 comments
The authors look at the nasty habit that many popular APIs
have of trampling roughshod over the global namespace (and all other namespaces) with the macro preprocessor, and demonstrate a simple technique to obviate it, and still be a good C++itizen.
Continuing the Journal's exploration of spontaneous networking technologies, this article presents an introduction to UPnP. UPnP allows personal computer and consumer electronics devices to advertise and offer their services to network clients.
by Bjorn Karlsson and Matthew Wilson, October 1, 2004, 36 comments
In this inaugural installment of their new column, Smart Pointers, Bjorn Karlsson and Matthew Wilson update the well-known Law of The Big Three, explaining which one of those member functions is not always needed.
C++0x is under construction. Get your licks in while there's still time.
STL meets glob(): Power, robustness, and genericity without sacrificing efficiency.
by David Abrahams and Aleksey Gurtovoy, August 29, 2004, 9 comments
This article investigates the use of metafunctions in
template metaprogramming, and introduces the Boost Metaprogramming Library. It is an excerpt from the upcoming book, "C++ Template Metaprogramming", by
David Abrahams and Aleksey Gurtovoy.
This article shows how to validate C++ objects in a boolean context without the usual harmful side effects.
Secure large-scale Java distributed computing is at the heart of Jini 2.0. Every aspect of building a secure distributed computing environment is configurable in Jini. This article provides a tutorial on using the Jini service configuration model, and illuminates the decisions by the Jini architects to rely on objects for service configuration.
This week, Artima launches a new Zine, The Journal of Spontaneous Networking. This editorial article introduces the Journal, and explains its subject matter.
Veteran developer Greg Colvin traces the evolution of C, C++ and Java with an eye to a better future.
This article shows how to easily process UNIX-style directory entries as STL sequences.
Good Things are happening in the C++ world.