{logo}

October 2005
Volume 23 Number 10

FEATURES

Asynchronous I/O Streams for TCP Connections

Claus Tondering
C++ I/O Streams can make reading and writing TCP sockets as easy as reading and writing to the console&$151;and even allow for asynchronous I/O.

Static Analysis, Security Holes, & Networking Code

Andy Chou
Static analysis, which examines source code at compile time, is an effective tool for spotting security flaws. However, scaling it to large codebases is a challenge.

Event Dispatching & the GED Library

Bo Xu
Event dispatchers can vary greatly across applications and platforms. Bo presents a Generic Event Dispatcher library that corrals the commonalities among event-dispatching mechanisms.

Bitstream Parsing in C++

Edward Bishop
Mask-and-shift operations for bitstream parsing can be tedious and error prone. Edward presents several ways to improve upon the traditional approaches.

Managed String Library for C

Robert C. Seacord
Standard Library string functions like strcpy() are not considered secure by today's standards. The Managed String Library is one possible solution.

The Perl-Compatible Regular Expressions Library

Ethan McCallum
The Perl-Compatible Regular Expression Library gives you the pattern-matching power of Perl in your C and C++ programs.

C++/CLI Threading: Part I

Rex Jaeschke
Rex covers the creation and synchronization of threads in C++/CLI.

COLUMNS

Generic<Programming>

Andrei Alexandrescu
Andrei discusses some fundamental principles behind resource management in C++.

C++ Made Easier

Andrew Koenig and Barbara E. Moo
C++ features that allow types to vary during compilation also allow compile-time computation on numbers. This can have useful side effects.

The New C++

Pete Becker
Pete continues last month's discussion of the new TR1 template class shared_ptr.

Book Review

Peter N. Roth
Peter examines Effective C#: 50 Specific Ways to Improve Your C# and C# Precisely.

DEPARTMENTS

Editor's Forum

New Products