The supplied class is designed to be completely safe in a multithreaded application, and uses some critical sections to achieve this. Thus, the string support headers will be precompiled, and you won't need to include them everywhere. This incurs a 4 byte penalty per object, and probably some small speed hit. It should just return an instance handle so that CStr knows where to load string resources from. The sample application shows an implementation of this function.
Any comments are welcome.
Also, I will be glad to add features provided that they seem to be useful to at least 3-4 people, and they do not take too much time. Total efficiency can not be Generic. I believe your bashing of CString to be unfounded. Corp. All Rights Reserved.