Die String-Klasse in C ++




c ++ String-Klasse, Programmieren für Anfänger

Verwenden Sie die Textinformationen während der Arbeit mit Datenbanken, Dateien, zum Empfangen und Senden von Nachrichten, Es ist ein integraler Bestandteil eines jeden Programmierer. Strings werden verwendet,, как для внутренних целей (Testen und Debuggen von Code), und zu lösen gemeinsam Probleme, Daten an den Client, Ihre GUI. Aus diesem Grund sollten Sie besondere Aufmerksamkeit schenken, wie eine Zeichenfolge in C ++ zu konstruieren, wie sie mit ihren grundlegenden Betrieb und die Methoden der Verarbeitung Objekten zu arbeiten, wie Schnur beschleunigt, oder mehr in geeigneter Weise in einer gegebenen Situation.

Streicher in C ++ kann eine sein Zeichen-Arrays verkohlen – Diese eingebauten Typ, die hat in C verwendet worden. Entweder Instanzen der Klasse Schnur, die in der Standard-C ++ Bibliothek enthalten. Es ist zu beachten, dass, wenn Sie ein Objekt dieser Art schaffen, bekommen wir fast eine sich dynamisch verändernden Array, dh. die, dass es keine Notwendigkeit, die Ausgangsgröße einzustellen, поскольку они могут меняться в процессе работы с сущностью.

Im ersten Fall wird die Zeile in Speicher plaziert, как массив. Через указатель типа verkohlen Es wird zugegriffen. Dieser Ansatz ist voller Fehler und ist sehr komplex, Es umgesetzt als niedrig. Klasse Objekte Schnur erleichtern die Arbeit, durch sie, können Sie den Zugriff auf die Standard-String-Operationen erhalten. Sie gehören zu einem Namespace stl (Standard Template Library). Zur weiteren Verwendung der Standard-C-Bibliothek, müssen Sie die Header-Datei verbinden:

Das einfachste Beispiel für eine Variable vom Typ String verwendet, wird es auf dem Bildschirm zu entfernen. Aber die Aufgabe erschweren und zu versuchen, für den Anfang, ein String-Wert betrachtet, und dann arbeiten.

Verfahren getline() позволяет считывать данные из потока Gin, und brennen sie in der Variablen, welches nach dem Komma angegeben.

Im Fall von, wenn Sie brauchen, um eine Variable zu initialisieren, wenn es erstellt wird, sollten Sie die folgende Syntax verwenden:

Betrachten Sie die grundlegenden Methoden der Klasse Schnur, die es Ihnen ermöglichen, die Linie zu ändern und Informationen über ihre Möglichkeiten zu erhalten.

Zwei Verfahren können verwendet werden, um die Kettenlänge zu erhalten,. Einer von ihnen Größe() andere Länge(). Beide Methoden liefern eine numerische Anzahl von Zeichen. Aber es sollte bemerkt werden,, dass die Nummerierung der Elemente in dem Array String beginnt noch mit 0.

Eintrag für die Überprüfung:

Als nächstes sehen wir, Beide Methoden liefern die gleichen Werte.

mit Strings in C ++ arbeiten, класс String C ++, Methoden Länge() и Größe()

Um zu überprüfen, auf das Vorhandensein eines Strings mit variablen Daten nutzt Funktion leer(), das gibt einen booleschen Wert ( 0 wenn falsch oder 1 wenn wahr). Diese Operation ist nützlich,, wenn Sie brauchen, um sich vor Datenverlust zu schützen.
Чтобы обнулить строчную переменную применяется метод klar(). Als Ergebnis nach der Ausführung myString.size() Rückkehr 0, und myString.empty() – Bedeutung wahr, dh. 1.
Code Listing Funktionen zum Überprüfen:

Performance-Ergebnisse:
mit Strings in C ++ arbeiten, класс String C ++

Betrachten wir nun die weniger triviale Operationen, das wird Zeit und Mühe von Programmierern sparen, sowie die Vermeidung der Verwendung von massiven Schleifen jeder der String-Array zu iterieren.

Funktion push_back (verkohlen) Es ermöglicht Ihnen, bis zum Ende der aktuellen Zeile ein beliebiges Zeichen eingeben hinzufügen verkohlen. Dabei, wir brauchen eine Wiederherstellung nicht von dem neuen String-Wert, die alte Variable wird einfach geändert werden.

Klasse Schnur Es ermöglicht Ihnen, zwei Saiten gleichzeitig zu manipulieren, Werte von einem zum anderen zu schreiben. Для этого на объекте строки следует вызвать метод einfügen (int startInResultString, String aus, int startInSourceString, int Menge). Где startInResultString – Zelle in der Zeile Startposition, in dem die neuen Daten zu erfassen, dh. werden die neuen Werte aus diesem Index platziert werden. Строчная переменная von ist eine Linie, von der Daten getroffen werden, Alle weiteren Parameter sind insbesondere darauf. Начальное значение индекса с которого начнется копирование данных обозначено startInSourceString. insgesamt Symbole, которые будут скопированы из строки von обозначено Menge, Zählen wird mit dem Start-Index ausgeführt Start.
Code Listing ermöglicht es besser, die Funktion der Eingangsparameter verstehen.

Codeausführung Ergebnisse:

mit Strings in C ++ arbeiten, класс String C ++

Es war nicht alles abgebaut, aber die am häufigsten verwendeten Funktionen für mit String-Objekten arbeiten. Klasse Vorteil Schnur Es ist die einfache Bedienung und eine große Anzahl von Methoden unterstützen. Dennoch, String-Objekte behandelt werden langsam. В некоторых случаях может случиться потеря данных либо разрыв целостности строки, die dann nicht so sein in zu bringen, visuell zu überprüfen.

Experiment – Erstellen Sie ein Objekt der Klasse Schnur und rufen ihre Methoden on-line. Versuchen Sie, sich zu verstehen,, was sie tun und wie sie funktionieren. In vielen Lehrbüchern unabhängig schreiben angeboten, um Ihre eigene (sicherlich gezähmt) Klasse für die Arbeit mit Strings. Es ist einfach und Sie werden verstehen, perfekt die gleiche Zeit, Wie ist die wirkliche Klasse Schnur. Wir werden für Sie einige Aufgaben vorbereiten, dieses Material zu sichern.

Seien Sie sicher, dass das Video auf der Klasse zu sehen (Autor Dennis Markov):

Newsletter neue Lektionen über die Programmierung:


Ich bin damit einverstanden, Nachrichten zu empfangen von purecodecpp.com auf meine E-Mail

Datum
Seite
Die String-Klasse in C ++
Wertung
5

5 Gedanken zu "Die String-Klasse in C ++

  1. Хорошая статья, может лучшая во всём цикле статейпо сбалансированности детальности и простоте изложения.

    Только непонятно, почему везде в тексте класс называется String (с большой буквы), если даже в примерах он везде используется как string (с маленькой буквы). Если вы напишете String в коде, то тут же получите грубую синтаксическую ошибку.

  2. Ещё хорошо бы упомянуть, хотя бы вскользь (или отдельной темой в продолжение, “использование string”?):

    1. что из string всегда можноизвлечьболее привычное представление char* (в стиле C) методом c_str():
    string s = “xxx”;
    char *c = s.c_str();

    2. о переопределённых операциях += и + для string, как конкатенация строк:
    string h =Hello “, w = “Welt”;
    cout << h + w << endl;
    h += w;
    cout << h << endl;

    3. о целой большой группе методов-представления строк для изображения числовых значений:
    string d( "123" ), f( "1.23" );
    long i = d.stoul();
    float z = d.stof();

  3. und last … замечание:
    > Beide Methoden liefern eine numerische Anzahl von Zeichen.

    Länge() и Größe() возвращают не количество символов, а количество байт в содержимом строки. Для ASCII (английских) Zeichen – это одно и то же. Но для русских (и других языков) – Nein, и зависит от используемой кодировки.

    , welche auch immer, в каком редакторе и какой кодировке работаете с кодом программы.

    Точные значения здесь не важныНо важно знать, что length() и Größe() для русских строк не дают предполагаемое число символов, что может порождать трудно находимые ошибки!

  4. съела, гадость, несколько строк примера!
    Но должно быть понятно, что длинапривет!” будет равна 13.

Hinterlasse eine Antwort

Platz Code in Tags: <pre class="lang:c ++ dekodieren:true ">DEIN CODE</Vor>