img clin003

string( msdn Libraries )

发表于2004/12/31 16:23:00  1124人阅读


A type that describes a specialization of the template class basic_string with elements of type char as a string.

typedef basic_string<char> string;


// string_string.cpp
// compile with: /EHsc
#include <string>
#include <iostream>

int main( ) 
   using namespace std;

   // Equivalent ways to declare an object 
   // of type basic_string <char>
   const basic_string <char> s1 ( "test" );
   string s2 ( "test" );   // Uses the typedef for string

   // comparison between two objects of type basic_string
   if ( s1 == s2 )
      cout << "The strings s1 & s2 are equal." << endl;
      cout << "The strings s1 & s2are not equal." << endl;


The strings s1 & s2 are equal.

basic_string Class

The sequences controlled by an object of template class basic_string
are the Standard C++ string class and are usually referred to as strings,
but they should not be confused with the null-terminated C-strings used throughout
the Standard C++ Library. The string class is a container that enables
the use of strings as normal types, such as using comparison and
concatenation operations, iterators, and STL algorithms and copying
and assigning with class allocator managed memory.

template <
   class CharType,
   class Traits=char_traits<CharType>, 
   class Allocator=allocator<CharType> 
class basic_string


The data type of a single character to be stored in the string.
The Standard C++ Library provides two specializations of this
template class, with the type definitions
string, for elements
of type char, and
wstring, for elements of type wchar_t.
Various important properties of the CharType elements in a
basic_string specialization are described by the class Traits.
The type that represents the stored allocator object that
encapsulates details about the string's allocation and deallocation
of memory. The default value is allocator<Type>.

Many member functions require an operand sequence of elements.
You can specify such an operand sequence several ways.


0 0



取 消