Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

C++ Grundkurs

Implizite Konvertierung

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Der Compiler vollzieht implizite Konvertierungen innerhalb von C++ automatisch.
02:32

Transkript

In dieser Lektion stelle ich ihnen implizite Typkonvertierungen vor. Implizite Typkonvertierungen sind Konvertierungen, die der Compiler automatisch durchführt. Er führt sie genau dann durch, wenn er sie benötigt, wie z. B. hier. Hier erkläre ich eine Variable vom Typ int. Die Variable nenne ich i und ich weise den Wert 1 zu. Addiere ich jetzt die Variable vom Typ int mit einer Variablen vom Typ double konvertiert der Compiler diese Variable i nach double und das Gesamtergebnis wird zu double. Implizite Konvertierungen können zwischen arithmetischen Typen, Zeigertypen und benutzerdefinierten Typen erfolgen. Sie folgen drei Regeln. Der kleinere wird in den größeren oder präziseren Typ konvertiert. Das int wurde hier oben zu double. Der Wert des kleineren Typs bleibt erhalten. Weil er in den größeren konvertiert wird. Diese Promotion auf Typen findet statt: boolesche Werte, Zeichen und kleine Integer werden erst zu ints und dann zu Fließkommatypen. Das kann aber durchaus Überraschungen bergen. Das zeige ich Ihnen in dem Programm hier. Hier wende ich wieder typeid an. Das ist eine Funktion aus der Standardheader typeInfo. Mit dem kann ich zur Laufzeit den Typ an Variable abfragen. Ich bekomme zwar keinen sehr schönen leserlichen Namen daraus. Aber man kann sich zumindest ableiten, von welchem Typ die Variable ist. typeid(i).name() vom int-Wert ist natürlich in int. typeid(true) also von einem Wahrheitswert ist b, sprich boolean. typeid(true + 2011) ist int. Das kommt daher, dass true nach int konvertiert wird und der Gesamtausdruck wird dann zu int. typeid(true + 2011 + 10L) - was für 10 long steht - wird zu einem long int. Dann true + int + long + Fließkommawert - in diesem Fall ein double- wird zu einer double. Hier habe ich die Werte miteinander verrechnet. Es ist wirklich interessant, was man in C++ miteinander verrechnen kann. true + 2011 + 10L + 3.4 ist 2025,4. Noch interessanter ist, dass true * false = false. In dieser Lektion habe ich Ihnen die implizite Typkonvertierung vorgestellt. Ich habe Ihnen im Wesentlichen auch vorgestellt, dass ein Bool, ein short, zum int im ersten Schritt konvertier wird und im zweiten Schritt zu einem Fließkommawert, in diesem Fall zu einer double.

C++ Grundkurs

Steigen Sie in die mächtige Programmiersprache C++ ein und lernen Sie dabei alle wichtigen Funktionen mit Anwendungsbeispielen kennen.

8 Std. 14 min (147 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!