{logo}

August 2003
Volume 21 Number 8

Security

Licensing Using Symmetric and Asymmetric Cryptography

Ilan Shamir
Algorithms and enlightenment for license key encryption.

Implementing an SSL/TLS-Enabled Client/Server on Windows Using GSS API

Alen Talibov
Easy, secure communications for Windows.

FEATURES

Generalized String Manipulation: Access Shims and Type Tunneling

Matthew Wilson
Sophisticated machinery for truly generic string processing.

CONTRIBUTING EDITORS

The Embedded Angle — An Exception or a Bug?

Miro Samek
From design by contract to pre-emptive programming: principles for writing better code.

STL & Generic Programming — That's All Folks

Thomas Becker
Recommendations and good advice from the codin' cowboy as he rides off into the sunset.

Conversations — Factory Redux, Part 2

Jim Hyslop and Herb Sutter
Revisiting the Template Method factory, with a generic to it. This month: incorporating the PersistentStorage<:> framework into your class hierarchy, and a summary of the pros and cons of this technique.

C++ Made Easier — Four First Steps to Modern C++ Programming

Andrew Koenig and Barbara E. Moo
The title says it all. Get on board, if you haven't done so already.

DEPARTMENTS

Editor's Forum

New Products

C++ EXPERTS ON THE WEB

Common Knowledge — What Are You, Anyway?

by Steve Dewhurst
In this month's Common Knowledge, you will examine one of the more obscure syntactic problems of template programming: how to guide the compiler's parse when there is not enough information available for the compiler to do the job on its own. Along the way you and I will discuss and disambiguate the "rebind" mechanism employed by the standard allocators and take a look at a weird protopattern.

Generic <Programming> — Enhancing Assertions

by Andrei Alexandrescu and John Torjo
This article, co-authored with John Torjo, describes John's definition of a full-featured, industrial-strength assertion facility. The package features multiple debug levels, logging and a means for collecting detailed state information.

The New C++ — Generalized Function Pointers

by Herb Sutter
The function facility, recently adopted by the C++ standards committee, provides a generalized way of working with arbitrary functions when all you know (or need to know) is their signature. In fact, as it turns out, you don't even need to know the target function's exact signature -- any target function with a compatible signature, meaning one where the parameter and return types are appropriately covertible, will work just fine.

Custom Components in ASP.NET (using C#)

by Sayed Hashimi
A look at how to build a custom ASP.NET component using C#, including sample code and commentary on various design alternatives.

Introducing the Boost Corner

by Joe Casad
April 2003 marked the beginning of a new feature at CUJ Online -- the Boost Corner. CUJ's Boost Corner, which is sponsored by Dinkumware, provides ongoing coverage of one of the most exciting recent developments in C++: the Boost Libraries.