Comment mettre en œuvre au mieux la conversion de type en C ++?



Cet article vous présentera la conversion de type en C ++ et le suivra avec une démonstration programmatique détaillée pour le même.

Cet article vous présentera un autre sujet intéressant sur la conversion de type en C ++ et suivez-le avec une démonstration pratique détaillée. Les pointeurs suivants seront traités dans cet article,

Alors commençons alors,





Conversion de type en C ++

La conversion de type fait référence à la conversion d'un type à un autre. L'idée principale derrière la conversion de type est de rendre la variable d'un type compatible avec une variable d'un autre type pour effectuer une opération. Par exemple, pour trouver la somme de deux variables, l'une de type int et l'autre de type float. Donc, vous devez taper cast int variable to float pour les rendre tous les deux de type float pour trouver la somme. Dans ce blog, nous allons apprendre comment effectuer une conversion de type en C ++.

surcharge et remplacement de méthode en java

En C ++, il existe deux types de conversion de type, à savoir la conversion de type implicite et la conversion de type explicite.



Conversion de type implicite

La conversion de type implicite ou la conversion de type automatique est effectuée par le compilateur seul. Il n'y a pas de déclencheur externe requis par l'utilisateur pour convertir une variable d'un type à un autre.

Cela se produit lorsqu'une expression contient des variables de plusieurs types. Ainsi, dans ces scénarios, une conversion de type automatique a lieu pour éviter la perte de données.Dans la conversion de type automatique, tous les types de données présents dans l'expression sont convertis en type de données de la variable avec le type de données le plus grand.

Voici l'ordre de la conversion automatique de type. Vous pouvez également dire, du plus petit au plus grand type de données pour la conversion de type.



bool -> char -> short int -> int -> unsigned int -> long -> unsigned -> long long -> float -> double -> long double

Les conversions implicites peuvent perdre des informations telles que les signes peuvent être perdus lorsque le type signé est implicitement converti en type non signé et un débordement peut se produire lorsque long est implicitement converti en float.

Regardons maintenant un exemple pour comprendre comment fonctionne la conversion de type implicite en C ++.

Exemple

#include using namespace std int main () 12w {int int1 = 100 // integer int1 char char1 = 'c' // caractère char1 // char1 implicitement converti en int en utilisant la valeur ASCII de 'c' ie 99 int1 = int1 + char1 // int1 est implicitement converti en float float flt1 = int1 + 2.7 cout<< 'int1 = ' << int1 << endl << 'char1 = ' << char1 << endl << 'flt1 = ' << flt1 << endl return 0 }

Production

int1 = 199

char1 = c

flt1 = 201,7

Suivant dans cette conversion de type dans l'article C ++,

Conversion de type explicite

La conversion de type explicite ou la conversion de type est une conversion de type définie par l'utilisateur. Dans la conversion de type explicite, l'utilisateur convertit un type de variable en un autre type. La conversion de type explicite peut être effectuée de deux manières en C ++:

  • Conversion par affectation
  • Conversion à l'aide de l'opérateur Cast

Voyons maintenant chacune des façons de convertir un type explicite d'un type en un autre.

Conversion par affectation

Dans cette conversion de type, le type requis est explicitement défini devant l'expression entre parenthèses. La perte de données se produit lors du cast de type explicite. Il est considéré comme un casting énergique. Prenons un exemple.

Exemple

#include using namespace std int main () {double dbl1 = 8.9 // Conversion explicite de double en int int res = (int) dbl1 + 1 cout<< 'Result = ' << res return 0 }

Production

Résultat = 9

Suivant dans cette conversion de type dans l'article C ++,

Conversion à l'aide de Cast Operator

L'opérateur Cast est un opérateur unaire qui force la conversion d'un type de données en un autre type de données. Il existe quatre types de cast en C ++, à savoir Static Cast, Dynamic Cast, Const Cast et Reinterpret Cast.

c ++ qu'est-ce que l'espace de noms
  • Cast statique - C'est le type de fonte le plus simple qui puisse être utilisé. Il effectue non seulement des upcasts, mais aussi des downcasts. Il s'agit d'un cast au moment de la compilation. Les vérifications ne sont pas effectuées pendant l'exécution pour garantir qu'un objet en cours de conversion est un objet complet du type de destination.
  • Diffusion dynamique - Il garantit qu'un résultat de la conversion de type pointe vers l'objet complet valide du type pointeur de destination.
  • Const Cast - manipule que si l'objet doit être constant ou non constant. Cela garantit que la constante doit être définie ou supprimée.
  • Réinterpréter la distribution - convertit tout type de pointeur en tout autre type de pointeur, même des classes non liées. Il ne vérifie pas si le type de pointeur et les données pointées par le pointeur sont identiques ou non.

Prenons un exemple de diffusion statique,

Exemple

#include using namespace std int main () {float flt = 30.11 // using cast operator int int1 = static_cast (flt) cout< 

Production

30

Cela nous amène à la fin de cet article sur la conversion de type en C ++.J'espère que vous avez trouvé cela informatif et utile, restez à l'écoute pour plus de tutoriels sur des sujets similaires.Vous pouvez également consulter notre programme de formation to obtenir des connaissances approfondies sur jQuery ainsi que ses différentes applications, vous pouvez pour une formation en ligne en direct avec une assistance 24/7 et un accès à vie.

Vous avez une question pour nous? Mentionnez-les dans la section commentaires de cet article et nous vous recontacterons.