Microsoft Foundation Classes (mfc.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
class CString
                                              ◄Up► ◄Contents► ◄Index► ◄Back►
──Microsoft Foundation Classes──────────────────────────────────────────────
 
  Description
 
  A CString object consists of a variable-length sequence of characters.
  The CString class provides a variety of functions and operators that
  manipulate CString objects using a syntax similar to that of Basic.
  Concatenation and comparison operators, together with simplified memory
  management, make CString objects easier to use than ordinary character
  arrays. The increased processing overhead is not significant. The
  following selections link to useful CString application notes:
 
  ■   ◄CString Exception Cleanup►
 
  ■   ◄CString Argument Passing►
 
  Comments
 
  The maximum size of a CString object is MAXINT (32,767) characters.
 
  The const char* operator gives direct access to the characters in a
  CString object, which makes it look like a C-language character array.
  Unlike a character array, however, the CString class has a built-in
  memory-allocation capability. This allows string objects to grow as a
  result of concatenation operations.
 
  No attempt is made to "fold" CString objects (if you make two CString
  objects containing Chicago, for example, the characters in Chicago are
  stored in two places).
 
  The CString class is not implemented as a Microsoft Foundation
  collection class, although CString objects can certainly be stored as
  elements in collections.
 
  The overloaded const char* conversion operator allows CString objects to
  be freely substituted for character pointers in function calls. The
  CString( const char* psz ) constructor allows character pointers to be
  substituted for CString objects.
 
  Use the GetBuffer and ReleaseBuffer member functions when you need to
  directly access a CString as a nonconstant pointer to char (char*
  instead of a const char*).
 
  CString objects follow "value semantics". A CString object represents a
  unique value. Think of a CString as an actual string not as a pointer to
  a string.
 
  Where possible, allocate CString objects on the frame rather than on the
  heap. This saves memory and simplifies parameter passing.
 
  #include <afx.h>
 
  Public Members
 
  Construction/Destruction
 
  ◄CString►   Constructs CString objects in various ways.
 
  ◄~CString►   Destroys a CString object.
 
  The String as an Array
 
  ◄GetLength►     Returns the number of characters in a CString object.
 
  ◄IsEmpty►       Tests whether the length of a CString object is 0.
 
  ◄Empty►         Forces a string to have 0 length.
 
  ◄GetAt►         Returns the character at a given position.
 
  ◄operator []►   Returns the character at a given position.
 
  ◄SetAt►         Sets a character at a given position.
 
  ◄operator const char* ()►
                  Directly accesses characters stored in a CString
                  object.
 
  Assignment/Concatenation
 
  ◄operator =►    Assigns a new value to a CString object.
 
  ◄operator +►    Concatenates two strings and returns a new string.
 
  ◄operator +=►   Concatenates a new string to the end of an existing
                  string.
 
  Comparison
 
  ◄operators ==, <, etc.►   Comparison operators (ASCII, case sensitive).
 
  ◄Compare►                 Compares two strings (ASCII, case sensitive).
 
  ◄CompareNoCase►           Compares two strings (ASCII, case
                            insensitive).
 
  ◄Collate►                 Compares two strings with proper
                            language-dependent ordering.
 
  Extraction
 
  ◄Mid►             Extracts the middle part of a string (like the Basic
                    MID$ command).
 
  ◄Left►            Extracts the left part of a string (like the Basic
                    LEFT$ command).
 
  ◄Right►           Extracts the right part of a string (like the Basic
                    RIGHT$ command).
 
  ◄SpanIncluding►   Extracts a substring that contains only the characters
                    in a set.
 
  ◄SpanExcluding►   Extracts a substring that contains only the characters
                    not in a set.
 
  Other Conversions
 
  ◄MakeUpper►     Converts all the characters in this string to uppercase
                  characters.
 
  ◄MakeLower►     Converts all the characters in this string to lowercase
                  characters.
 
  ◄MakeReverse►   Reverses the characters in this string.
 
  Searching
 
  ◄Find►          Finds a character or substring inside a larger string.
 
  ◄ReverseFind►   Finds a character inside a larger string; starts from
                  the end.
 
  ◄FindOneOf►     Finds the first matching character from a set.
 
  Archive/Dump
 
  ◄operator <<►   Inserts a CString object to an archive or dump context.
 
  ◄operator >>►   Extracts a CString object from an archive.
 
  Buffer Access
 
  ◄GetBuffer►            Returns a pointer to the characters in the
                         CString.
 
  ◄GetBufferSetLength►   Returns a pointer to the characters in the
                         CString, truncating to the specified length.
 
  ◄ReleaseBuffer►        Yields control of the buffer returned by
                         GetBuffer.
 
  Windows-Specific
 
  ◄LoadString►   Loads an existing CString object from a Windows
                 resource.
 
  ◄AnsiToOem►    Makes an in-place conversion from the ANSI character set
                 to the OEM character set.
 
  ◄OemToAnsi►    Makes an in-place conversion from the OEM character set
                 to the ANSI character set.
 
 
                                     -♦-