Freigeben über


basic_string::basic_string

Erstellt eine Zeichenfolge, die leer ist, initialisiert von bestimmten Zeichen, oder wird eine Kopie von vollständig oder teilweise einer anderen (auf null endende) Zeichenfolge des String-Objekts oder C-Formats.

basic_string();
explicit basic_string(
    const allocator_type& _Al
);
basic_string(
    const basic_string& _Right
);
basic_string(
    basic_string&& _Right
);
basic_string(
    const basic_string& _Right, 
    size_type _Roff,
    size_type _Count = npos
);
basic_string(
    const basic_string& _Right, 
    size_type _Roff,
    size_type _Count, 
    const allocator_type& _Al
);
basic_string(
    const value_type *_Ptr, 
    size_type _Count
);
basic_string(
    const value_type *_Ptr, 
    size_type _Count,
    const allocator_type& _Al
);
basic_string(
    const value_type *_Ptr
);
basic_string(
    const value_type *_Ptr,
    const allocator_type& _Al
);
basic_string(
    size_type _Count, 
    value_type _Ch
);
basic_string(
    size_type _Count, 
    value_type _Ch,
    const allocator_type& _Al
);
template <class InputIterator>
    basic_string(
        InputIterator _First, 
        InputIterator _Last
    );
template <class InputIterator>
    basic_string(
        InputIterator _First, 
        InputIterator _Last, 
        const allocator_type& _Al
    );
basic_string(
   const_pointer _First,
   const_pointer _Last
);
basic_string(
   const_iterator _First,
   const_iterator _Last
);

Parameter

  • _Ptr
    Die C-Zeichenfolge, deren Zeichen verwendet werden soll, um string zu initialisieren, das erstellt wird. Dieser Wert kann ein NULL-Zeiger sein.

  • _Al
    Die Speicherreservierungsklasse für das Zeichenfolgenobjekt, das erstellt wird.

  • _Count
    Die Anzahl der zu initialisierenden werden Zeichen.

  • _Right
    Die Zeichenfolge, um die Zeichenfolge zu initialisieren, die erstellt wird.

  • _Roff
    Der Index eines Zeichens in einer Zeichenfolge, die die, um ist Zeichenwerte verwendet werden für die erste Zeichenfolge initialisiert, die erstellt wird.

  • _Ch
    Der in die Zeichenfolge kopiert werden Zeichenwert, die erstellt wird.

  • _First
    Ein Eingabeiterator, ein const_pointer oder ein const_iterator, das das erste Element im eingefügt werden Quellbereich behandelt.

  • _Last
    Ein Eingabeiterator, ein const_pointer oder ein const_iterator, das die Position von der über den letzten Eintrag hinaus im Quellbereich behandelt eingefügt werden.

Rückgabewert

Ein Verweis auf das Zeichenfolgenobjekt, die von den Konstruktoren erstellt wird.

Hinweise

Alle Konstruktoren speichern basic_string::allocator_type und initialisieren die gesteuerte Sequenz. Das Zuweisungsobjekt ist das Argument al, sofern es vorhanden ist. Für den Kopierkonstruktor ist es right.basic_string::get_allocator(). Andernfalls ist der Wert Alloc().

Die gesteuerte Sequenz wird auf eine Kopie der Operandensequenz initialisiert, die durch die verbleibenden Operanden angegeben wird. Ein Konstruktor ohne eine Operandensequenz gibt eine leere ursprünglichen gesteuerten Sequenz an. Wenn InputIterator ein Ganzzahlfeld ist, geben Sie einen Vorlagenkonstruktor, das Operandensequenz _F irst, _Last verhält sich genauso wie (size_type)_First, (value_type)_Last.

Beispiel

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

int main( )
{
   using namespace std;

   // The first member function initializing with a C-string
   const char *cstr1a = "Hello Out There.";
   basic_string <char> str1a ( cstr1a , 5);
   cout << "The string initialized by C-string cstr1a is: "
        << str1a << "." << endl;

   // The second member function initializing with a string
   string  str2a ( "How Do You Do?" );
   basic_string <char> str2b ( str2a , 7 , 7 );
   cout << "The string initialized by part of the string cstr2a is: "
        << str2b << "." << endl;

   // The third member function initializing a string
   // with a number of characters of a specific value
   basic_string <char> str3a ( 5, '9' );
   cout << "The string initialized by five number 9s is: "
        << str3a << endl;

   // The fourth member function creates an empty string
   // and string with a specified allocator
   basic_string <char> str4a;
   string str4b;
   basic_string <char> str4c ( str4b.get_allocator( ) );
   if (str4c.empty ( ) )
      cout << "The string str4c is empty." << endl;
   else
      cout << "The string str4c is not empty." << endl;

   // The fifth member function initializes a string from
   // another range of characters
   string str5a ( "Hello World" );
   basic_string <char> str5b ( str5a.begin ( ) + 5 , str5a.end ( ) );
   cout << "The string initialized by another range is: "
        << str5b << "." << endl;
}

Ausgabe

The string initialized by C-string cstr1a is: Hello.
The string initialized by part of the string cstr2a is: You Do?.
The string initialized by five number 9s is: 99999
The string str4c is empty.
The string initialized by another range is:  World.

Anforderungen

Header: <Zeichenfolge>

Namespace: std

Siehe auch

Referenz

basic_string-Klasse

<string>

Lvalues und Rvalues

Weitere Ressourcen

basic_string Member

<string> Member