Nochmal der Anfänger: string einlesen
-
Hallo
Ich würde gerne meine eigene Klasse string generieren.
Dazu will ich den string s1="Hallo" in eine Struktur der Formstruct Buchstabenliste { char buchstabe; Buchstabenliste *next; };einlesen.
Aber irgendwie scheitern all meine Versuche.
Das kann ich doch nur durch eine schleife realisiere, die jeden buchstaben einliest?
im main steht dann z.b string s1="Hallo";
und in der klasse muss ich dann irgendwie für jeden Buchstaben eine Buchstabenliste erzeugen und verketten?Ist das so richtig??
String::String(char) { ..... }sieht so irgendwie die einleitung der Methode aus?
-
Hallo
Warum so ein umständliche Struktur? String-Klassen werden in der regel mit einem internen char-Array implementiert. Dann kannst du einfach den Zuweisungsop/Konstruktor für char* benutzen, um String-Literale zu verarbeiten.
Bei deinem Konzept wirst du jedenfalls niemals so einfach ein String-Literal einlesen können.
bis bald
akari
-
Ist mir klar das das umständlich ist.
Ich soll aber sowas im rahmen einer Laboraufgabe (studium) machen und hab keinen blassen schimmer
-
Implementier doch zuerst eine einfach verkettete Liste als Klasse und überleg dir dann, welche Methoden spezifisch für Strings sind...
greetz, Swordfish
-
Hallo
Ich bezweifle das das wirklich von dir verlangt wird.
Mit dem Ausdruck "Zeichenkette" wird normalerweise nicht eine Klasse gemeint die jeweils nur einen char aufnimmt und sich mit andern Instanzen verkettet.
Sondern ein char* bzw. eine einzelne Instanz einer Klasse die so ein dynamisches Char-Array beinhaltet.bis bald
akari
-
Hier mal die genaue aufgabe:
2.1. Strings
Implementieren Sie die Klasse String auf Basis einer internen Repr¨asentation als einfache
Liste von Buchstaben:
struct Buchstabenliste {
char buchstabe;
Buchstabenliste *next;
};
Hierzu sind neben Konstruktor und Destruktor wenigstens das ¨Uberladen von <<, +
und [] sowie die Methode length() zu realisieren. Weitere Methoden stehen Ihnen zur
Implementierung frei. Welche Vor- und Nachteile dieser internen Repr¨asentation sehen
Sie?
-
akari schrieb:
Ich bezweifle das das wirklich von dir verlangt wird.
Ich zweifle an keinen verrückten (!) Aufgaben mehr, seid ich angefangen habe, Nachhilfe zu geben.
@OP: Rein interessehalber, welcher Bildungstyp, Alter und Verweildauer (
) dort?greetz, Swordfish
-
Hallo
Etechnik Student. Das ist die letzte aufgabe die ich lösen muss. dann hab ich c++ hinter mir