![]()
December 2001
Volume 19 Number 12INTERNET AND NETWORK PROGRAMMING
Guidelines for Wrapping Sockets in Classes
James Pee
Programming sockets has always tested one's attention to detail. Wrap stuff in a class and voilà Cake City.An Iostream-Compatible Socket Wrapper
Maciej Sobczak
With suitable scaffolding, writing to a socket is as easy as cout << "Hello, world";.FEATURE
Distinguishing STL Search Algorithms
Scott Meyers
More cogent Meyers' counsel on using STL effectively this time on how to best find what you're looking for.BOOK REVIEW
A Look at Two C# Books
reviewed by William Cirillo
Books on C# are accumulating apace. You might look here before you buy.C/C++ CONTRIBUTING EDITORS
STL & Generic Programming: Traits Classes
Thomas Becker
Traits classes are a mainstay of the Standard C++ library. Here's an opportunity to understand them in depth.Common Knowledge: Conventional Generic Algorithms
Steve Dewhurst
Steve explains in eye-opening depth how it is that STL algorithms and iterators are so well-behaved and extensible. It's all about convention.C++ Made Easier: A New Look at for Statements
Andrew Koenig & Barbara E. Moo
A deeper look at the art of for-loop design.The New C: Variable Length Arrays, Part 2
Randy Meyers
Unlike C or C++, C99 lets you define the bounds of multidimensional arrays at run time, much to scientific programmers' delight.Post-Mortem Debunker: Trust Me
Stan Kelly-Bootle
Whom do you trust (apologies to Johnny Carson)? Bill Gates? Groucho Marx? English language "experts"? One thing is certain: you can trust Stan to get you thinking about most anything, including matters of trust.DEPARTMENTS
Editors 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:
Object Interconnections: Real-time CORBA, Part 1: Motivation and Overview
by Douglas C. Schmidt and Steve Vinoski
This month the authors turn their attention to standard middleware for DRE systems. They present an overview of the Real-time CORBA specification, which provides standard interfaces and policies that allow applications to configure and control processor resources via thread pools, priority mechanisms, intra-process mutexes, and a global scheduling service; communication resources via protocol properties and explicit bindings; and memory resources via buffering requests in queues and bounding the size of thread pools.Conversations: Id Hold Anything for You
by Herb Sutter and Jim Hyslop
There are occasions when you have a variable whose type you dont know until run time. The common solution has been to use a union or a void pointer, both of which can have devastating effects if not used correctly. Now, thanks to the Boost library, there is a safe alternative.Generic<Programming>: Typed Buffers (III)
by Andrei Alexandrescu
In his final installment on typed buffers, Alexandrescu looks at copying and moving objects and offers some helpful solutions for getting around portable C and C++s suboptimal memory allocation.The Standard Librarian: A Debugging Allocator
by Matt Austern
Error-checking is always important and especially so when dealing with complicated interfaces like STL allocators. This column shows a class, debug_allocator, that performs some run-time checks. Techniques used in writing debug_allocators turn out to be useful for a wide range of allocator adaptors.