Deklaration der Klasse: Prototpyen ... Hauptprogramm ... ... Implementation der Klasse: ...
cis_wstring
cis_wstring
soll in der Lage sein einen wstring
intern in einem Array von wchar_t
(genannt Buchstaben-Memory) zu speichern. cis_wstring
benötigt mindestens folgende public Komponenten:int get_anzahl_chars() ... liefert die Anzahl der Buchstaben der cis_string Daten wstring get_cis_string_data() ... liefert als wstring den Inhalt des Buchstaben-Memory. void set_cis_string_data(wstring text) ... trägt den wstring text in die cis_string Daten ein.
cis_wstring
benötigt
mindestens folgende private Komponenten:wchar_t data[132] ... alle Buchstaben der cis_string Daten (Buchstaben-Memory) int anzahl ... Anzahl der Buchstaben im Buchstaben-Memory
Schreiben Sie public-member Funktionen für
die Klasse cis_wstring
,
die folgende Aktionen auf einem Objekt der Klasse cis_wstring
ausführen
(Verwenden Sie möglichst string- Library Funktionen (siehe im Internet unter "http://en.cppreference.com/w/cpp/string/wide") )
cis_wstring
auf SPACE setzt.cis_wstring
überträgt.void cis_wstring_to_upper()
Funktion, die die Daten des cis_wstring
in Großbuchstaben konvertiert. bool first_is_upper()
Funktion, die wahr/falsch liefert, je nachdem ob der erste
Buchstaben des cis_wstrings
ein Großbuchstabe ist (Verwenden Sie Libraryfunktionen
zum Testen)Nun soll folgende main() Funktion möglich sein:
int main() { setlocale(LC_ALL,"") // Locale auf das interne UTF8 setzen wstring eingabe; wstring ausgabe; cis_wstring text; cis_wstring möller(L"Wie geht es Herrn Möller?"); wcout << L"Die Frage aller Fragen ist knallhart: " << möller << endl; wcout << L"Bitte geben sie ein Wort ein :" << endl; wcin >> eingabe; text.set_cis_string_data(eingabe); // eingabe in den cis_wstring 'text' eintragen wcout << L"Die Anzahl der Buchstaben ist : " << text.get_anzahl_chars() << endl; // Test, ob der erste Buchstabe großgeschrieben ist: if (text.first_is_upper()) { wcout << L"Der erste Buchstabe des Strings ist ein großer Buchstabe" << endl; } // Konvertieren auf Uppercase: text.cis_wstring_to_upper(); ausgabe = text.get_cis_string_data(); // holt aus dem cis_wstring 'text' den wstring ... wcout << L"To Upper: Der Text ist jetzt: " << ausgabe << endl; }