![]()
December 2000
Volume 18 Number 12GRAPHICS
Removing Image Noise with Adaptive Filters
Dwayne Phillips
There is no such thing as a universal filter, but we can get close by building one that adapts to the local noise. Dwayne Phillips walks us through the math to make a filter look a little bit smart.Effective Contour Creation with OpenGL Texture Mapping
Wenfei Wu
In graphics applications, "let the hardware do it" is generally good advice. Today's graphics hardware keeps getting better and better, and OpenGL knows how to exploit its capabilities. Even producing contour plots can be a fairly painless operation.FEATURES
A Class Template for N-Dimensional Generic Resizable Arrays
Giovanni Bavestrelli
Need dynamic arrays that are efficient and intuitive? Try a little template recursion and specialization.C/C++ TIPS
Tip #4: Self Destructing Threads
Mark Peterson
A way to make threads easier to manage.C/C++ CONTRIBUTING EDITORS
Common Knowledge: Fungible Control Structures
Steve Dewhurst
Steve presents some effective but unorthodox methods for controlling flow of execution including one that looks downright weird.The Journeyman's Shop: Trap Handlers, Sticky Bits, and Floating-Point Comparisons
Pete Becker
Pete wraps up his series on practical floating-point math.The New C: Integers in C99, Part 1
Randy Meyers
C has its roots in typeless languages, but it has come a long long way from its humble beginnings.STL & Generic Programming: Introduction to the STL
Thomas Becker
Here's a very brief history of the C++ Standard library, and a call to abandon the naive view that the STL is "just a bunch of containers."Uncaught Exceptions: No No .NET
Bobby Schmidt
Bobby does a little moonlighting at the VC++ help desk, and battles some phantom foos in his spare time.DEPARTMENTS
Editor's Forum
New Products
We Have Mail
C++ EXPERTS ON THE WEB
In this new, web-only component of CUJ, we continue publication of the columns that were popular in the former C++ Report magazine. The following articles are featured on the CUJ website this month:
The Standard Librarian: What are Allocators Good For?
Matt Austern
Most of us use STL allocators without knowing it; Matt explains when we might want to invoke them explicitly or write our own, and how to go about it.Effective C++ Standard Library: Explicit Function Template Argument Specification and the STL
Klaus Kreft and Angelika Langer
A subtle problem with templates that could bite you if you're not careful.Generic<Programming>: Change the Way You Write Exception-Safe Code Forever
Andrei Alexandrescu and Petru Marginean
Here's a handy template that makes exception safety a whole lot easier to achieve.Conversations: Virtually Yours
Jim Hyslop and Herb Sutter Guideline: virtual functions should be made private if possible. Surprised? This article gives the rationale.