Mixed-Mode-Ausdrücke in C ++

C ++ können Sie Variablentypen in einem einzigen Ausdruck zu mischen. Das heißt, Sie erlaubt eine ganze Zahl mit einem hinzufügen doppelt precision floating-point-Wert. In den folgenden Ausdruck, zum Beispiel, nValue1 Man läßt eine sein int:

// In den folgenden Ausdruck der Wert nValue1 // wird in ein Doppel umgewandelt, bevor die Durchführung der // assignmentint nValue1 = 1-nValue1 + 1,0-

Ein Ausdruck, in dem die beiden Operanden werden nicht vom gleichen Typ a genannt wird Mixed-Mode-Ausdruck. Mixed-Mode-Ausdrücke erzeugen einen Wert, dessen Typ gleich der mehr in der Lage der beiden Operanden. In diesem Fall, nValue1 ist ein umgebautes doppelt bevor die Berechnung fortgesetzt. In ähnlicher Weise kann ein Ausdruck eines Typs einer Variablen eines anderen Typs zugeordnet werden, wie in der folgenden Erklärung:

// In der folgenden Zuordnung, die ganze // Nummer Teil fVariable in nVariabledouble dVariable = 1,0-int nVariable-nVariable = gespeichert dVariable-

Sie können Präzision oder einen Bereich, wenn die Variable auf der linken Seite der Zuweisung verlieren, ist kleiner. In dem vorangehenden Beispiel C ++ kürzt den Wert dVariable vor der Lagerung in nVariable.

einen größeren Wert Typ in einen kleineren Wert Typ Konvertierung wird aufgerufen Degradierung, während Werte in die entgegengesetzte Richtung umzuwandeln ist bekannt als Beförderung. Programmierer sagen, dass der Wert von int Variable nVariable1 wird einem gefördert doppelt in Ausdrücken wie die folgenden:

int nVariable1 = 1-double dVariable = nVariable1-

Mixed-Mode-Ausdrücke sind nicht eine gute Idee. Vermeiden Sie C ++ zwingen Ihre Conversions für Sie tun.

Menü