Sprog :
SWEWE Medlem :Logon |Registrering
Søg
Encyclopedia samfund |Encyclopedia Svar |Indsend spørgsmål |Ordforråd Viden |Upload viden
Forrige 1 Næste Vælg sider

Casts

Kaster Profile

Casts

Når antallet af forskellige typer operationer, og ikke hører til de grundlæggende datatyper, ofte nødt til at kaste operander i den type behov. Afstøbninger har to former, kaldet eksplicitte og implicitte afstøbninger kaster. Kaster ikke ændre typen af ​​de oprindelige data.

Fælles C kaster funktioner er: const_cast, static_cast, reinterpreter_cast og dynamic_cast.Kaster måde

En eksplicit casts

C udtrykkeligt kaster en meget enkel format er som følger:

TYPE b = (type) a;

Hvilket, TYPE er den type af deskriptorer, såsom int, float, etc. Efter de støbte Operatører, returnerer en værdi af typen TYPE med denne cast operation ændrer ikke operand selv, efter at operander selv har ikke ændret sig, for eksempel:

int n = 0xab65;

char cChar = (char) n;

Disse resultater stemmer er heltalsværdien 0xab65 høje byte slette indholdet i den lave ende af en byte som en char typen værdi tildelt variablen cChar, men efter typen konvertering værdi nVar ikke ændret sig.

I C kaster funktion har fire: const_cast (bruges til at fjerne const attribut), static_cast (for støbte grundlæggende typer), dynamic_cast (konverteringstype mellem polymorfe typer, der bruges), reinterpreter_cast (for forskellige typer af Konvertering mellem pejlemærker blandt de mest almindeligt anvendte er omdannelse funktion pointer mellem forskellige typer).

2, implicitte casts

Implicit typekonvertering forekommer i opgaven udtryk og har en returværdi af funktionskaldet udtryk. I opgaven udtryk, hvis opgaven operatør operanddata typer forskellige venstre og højre side af opgaven operatør vil kaste den højre operand typen numerisk tegn efter den venstre side af opgaven, opgaven operatør tildelt til venstre for variablerne. Når funktionen kaldes, hvis den type og funktion returværdierne tilbage returnere udtryk for forskellige typer, så afkastet værdi, når værdien af ​​udtrykket vil vende tilbage støbt funktion returværditype, så værdien returneres, såsom:

int nVar;

dobbelt DVARIANS = 3,88;

nVar = DVARIANS ;/ / efter fuldbyrdelsen af ​​dommen, nVar er 3, og værdien er stadig 3,88 DVARIANS

Type konvertering:

En automatisk typekonvertering

2 casts

Automatisk typekonvertering af to situationer: 1, forskellige typer af data operationer, vil systemet automatisk lavere prioritet operation i et højt niveau, højt niveau samt den aritmetiske datatyper. 2, på begge sider af opgaven operatør er ikke den samme type, vil systemet automatisk konvertere til den rigtige variabel typeudtryk type på venstre side, og derefter opgaven

Afstøbninger:

Såsom: (int) 3.1415 / / er et heltal del

(Int) a% 10 / / få et enkelt ciffer

Hvis A er en int typen, tage en kvadratroden er sqrt ((dobbelt) a).

3, implicitte automatisk typekonvertering:

Automatisk C implicit datatype konvertering regler interne sprog compiler system giver som følger:

1, når du udfører aritmetiske operationer, kan lav type (korte bytes) konverteres til en høj type (lang bytes) eksempel: int typen omdannes til en dobbelt, char konverteret til en int typen, og så videre;

2 opgave udtryk, er den type af værdien af ​​den højre side af udtrykket konverteres automatisk til den type implicit venstre variabler og tildele det;


Forrige 1 Næste Vælg sider
Bruger Anmeldelse
Ingen kommentarer endnu
Jeg ønsker at kommentere [Besøgende (18.118.*.*) | Logon ]

Sprog :
| Tjek kode :


Søg

版权申明 | 隐私权政策 | Copyright @2018 Verden encyklopædiske viden