Com implementar millor la conversió de tipus a C ++?



Aquest article us presentarà la conversió de tipus en C ++ i el seguirà amb una demostració programàtica detallada del mateix.

Aquest article us presentarà un altre tema interessant que escriu Conversió C ++ i seguiu-ho amb una demostració pràctica detallada. En aquest article es tractaran les següents indicacions,

Comencem doncs,





Escriviu la conversió en C ++

La conversió de tipus fa referència a la conversió d’un tipus a un altre. La idea principal darrere de la conversió de tipus és fer que les variables d’un tipus siguin compatibles amb les variables d’un altre tipus per realitzar una operació. Per exemple, per trobar la suma de dues variables, una de tipus int i una altra de tipus float. Per tant, heu d’escriure cast int variable per flotar per fer que tots dos siguin de tipus flotant per trobar la suma. En aquest bloc aprendrem com realitzar conversions de tipus en C ++.

A C ++, hi ha dos tipus de conversió de tipus, és a dir, conversió de tipus implícita i conversió de tipus explícita.



Conversió de tipus implícita

El compilador fa tota la conversió de tipus implícita o automàtica. L'usuari no requereix cap activador extern per publicar una variable d'un tipus a un altre.

Això passa quan una expressió conté variables de més d’un tipus. Per tant, en aquests escenaris es produeix la conversió automàtica de tipus per evitar la pèrdua de dades.En la conversió automàtica de tipus, tots els tipus de dades presents a l’expressió es converteixen en tipus de dades de la variable amb el tipus de dades més gran.

A continuació es mostra l'ordre de conversió automàtica del tipus. També podeu dir, del tipus de dades més petit a més gran per a la conversió de tipus.



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

Les conversions implícites poden perdre informació, com ara que es puguin perdre signes quan el tipus de signe es converteix implícitament en un tipus sense signe i es pot produir un desbordament quan es converteix implícitament en float.

instal·lar PHP a Windows 10

Vegem ara un exemple per entendre com funciona la conversió de tipus implícita a C ++.

Exemple

#include using namespace std int main () 12w {int int1 = 100 // integer int1 char char1 = 'c' // character char1 // char1 implícitament convertit a int utilitzant el valor ASCII de 'c', és a dir, 99 int1 = int1 + char1 // int1 es converteix implícitament en float float flt1 = int1 + 2.7 cout<< 'int1 = ' << int1 << endl << 'char1 = ' << char1 << endl << 'flt1 = ' << flt1 << endl return 0 }

Sortida

int1 = 199

char1 = c

com elevar a un poder a Java

flt1 = 201,7

A continuació, en aquest tipus de conversió a l'article C ++,

Conversió de tipus explícita

La conversió de tipus explícita o la conversió de tipus és una conversió de tipus definida per l'usuari. En la conversió de tipus explícita, l'usuari converteix un tipus de variable en un altre tipus. La conversió de tipus explícita es pot fer de dues maneres en C ++:

  • Conversió per assignació
  • Conversió mitjançant l'operador Cast

Vegem ara cadascuna de les maneres d’escriure explícitament un tipus a un altre.

Conversió per assignació

En aquesta conversió de tipus, el tipus requerit es defineix explícitament davant de l’expressió entre parèntesi. La pèrdua de dades es produeix en un càsting de tipus explícit. Es considera un càsting contundent. Vegem un exemple.

Exemple

#include using namespace std int main () {double dbl1 = 8,9 // Conversió explícita de double a int int res = (int) dbl1 + 1 cout<< 'Result = ' << res return 0 }

Sortida

Resultat = 9

A continuació, en aquest tipus de conversió a l'article C ++,

fusionar el codi d'ordenació c ++

Conversió mitjançant Cast Operator

L'operador d'emissió és un operador unari que obliga a convertir un tipus de dades en un altre tipus de dades. Hi ha quatre tipus de càsting a C ++, és a dir, Cast estàtic, Cast dinàmic, Const Cast i Reinterpret Cast.

  • Repartiment estàtic - Aquest és el tipus de repartiment més senzill que es pot utilitzar. No només realitza descensos, sinó també descensos. És un repartiment de temps de compilació. No es realitzen comprovacions durant el temps d'execució per garantir que un objecte que es converteix sigui un objecte complet del tipus de destinació.
  • Repartiment dinàmic - Assegura que un resultat de la conversió de tipus apunta a l'objecte vàlid i complet del tipus de punter de destinació.
  • Const Cast - manipula que si l'objecte ha de ser constant o no constant. Assegura que cal establir o eliminar la constant.
  • Reinterpreteu el repartiment - converteix qualsevol tipus de punter a qualsevol altre tipus de punter, fins i tot de classes no relacionades. No comprova si el tipus de punter i les dades apuntades pel punter són iguals o no.

Vegem un exemple de repartiment estàtic,

Exemple

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

Sortida

30

Això ens porta al final d’aquest article sobre la conversió de tipus a C ++.Espero que us hagi estat útil i informatiu, estigueu atents a més tutorials sobre temes similars. També podeu consultar el nostre programa de formació tPodeu obtenir coneixements en profunditat sobre jQuery juntament amb les seves diverses aplicacions per a formació en línia en directe amb assistència les 24 hores del dia, els 7 dies de la setmana i accés durant tota la vida.

Tens alguna pregunta? Esmenta’ls a la secció de comentaris d’aquest article i et respondrem.