Ierakstiet Conversion C++
Tipa cast būtībā ir pāreja no viena veida uz citu. Ir divi veidu pārveidošanas veidi:
- Netieša tipa konvertēšana Zināms arī kā “automātiskā tipa konvertēšana”.
- To veic kompilators pats, bez jebkāda ārēja lietotāja aktivizēta.
- Parasti notiek, ja izteiksmē ir vairāk nekā viens datu tips. Šādos apstākļos notiek tipa konvertēšana (tipa veicināšana), lai izvairītos no datu zaudēšanas.
- Visi mainīgo datu tipi tiek jaunināti uz tā mainīgā datu tipu ar lielāko datu tipu.
bool ->char -> short int -> int -> unsigned int -> long -> unsigned -> long long -> float -> double -> long double
- Ir iespējams, ka netiešās konversijas var zaudēt informāciju, zīmes var tikt zaudētas (ja parakstīts tiek netieši pārveidots par neparakstītu), un var rasties pārpilde (ja long long tiek netieši pārveidots par peldošu).
- Konvertēšana pēc uzdevuma: Tas tiek darīts, skaidri definējot vajadzīgo veidu izteiksmes priekšā iekavās. To var uzskatīt arī par spēcīgu liešanu.
Sintakse:
(type) expression
kur veids norāda datu tipu, uz kuru tiek konvertēts gala rezultāts.
Piemērs:
// C++ program to demonstrate>// explicit type casting>>#include>using>namespace>std;>>int>main()>{>>double>x = 1.2;>>>// Explicit conversion from double to int>>int>sum = (>int>)x + 1;>>>cout < <>'Sum = '>< < sum;>>>return>0;>}>
Izvade:Sum = 2
- Konvertēšana, izmantojot Cast operatoru: Cast operators ir vienots operators kas liek vienam datu tipam pārveidot par citu datu tipu.
C++ atbalsta četrus liešanas veidus:- Statiskā apraide
- Dinamiskā apraide
- Const Cast
- Pārinterpretēt Cast
- Tas tiek darīts, lai izmantotu noteiktas tipu hierarhiju vai tipu attēlojumu funkcijas.
- Tas palīdz aprēķināt izteiksmes, kas satur dažādu datu tipu mainīgos.
Piemērs:
#include>using>namespace>std;>int>main()>{>>float>f = 3.5;>>>// using cast operator>>int>b =>static_cast><>int>>(f);>>
Izvade:3
Tipa pārveidošanas priekšrocības:
Jums Varētu Patikt
Top Raksti
Kategorija
Netiešās reklāmguvuma veida piemērs:
// An example of implicit conversion> > #include> using> namespace> std;> > int> main()> {> > int> x = 10;> // integer x> > char> y => 'a'> ;> // character c> > > // y implicitly converted to int. ASCII> > // value of 'a' is 97> > x = x + y;> > > // x is implicitly converted to float> > float> z = x + 1.0;> > > cout < <> 'x = '> < < x < < endl> > < <> 'y = '> < < y < < endl> > < <> 'z = '> < < z < < endl;> > > return> 0;> }> |
Izvade:
x = 107 y = a z = 108Skaidra tipa konvertēšana : šo procesu sauc arī par tipa apraidi, un to nosaka lietotājs. Šeit lietotājs var ierakstīt rezultātu, lai padarītu to par noteiktu datu tipu.
Programmā C++ to var izdarīt divos veidos: