See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Conversion de type - Wikipédia

Conversion de type

Un article de Wikipédia, l'encyclopédie libre.

Pour les articles homonymes, voir conversion.

En informatique la conversion de type est le fait de convertir une valeur d'un type (source) dans un autre (cible). On parle aussi de cœrcition ou de cast. On distingue trois types de conversion (dont un seul mérite vraiment le nom de conversion) suivant la relation de sous-typage existant entre les types source et cible :

  • la conversion entre types incomparables,
  • la cœrcition ascendante,
  • la cœrcition descendante.

[modifier] Conversion entre types incomparables

C'est la cœrcition la plus ancienne historiquement. Elle consiste (généralement) à transformer physiquement la représentation binaire d'une variable pour la faire correspondre au type de la cible. En langage C, la conversion d'une variable de type entier (usuellement codé en complément à deux) vers un type réel (usuellement codé selon la norme IEEE) est un exemple de ce genre de conversion. Elle est à manier avec prudence car elle n'est pas toujours possible et peut amener des résultats non prévus.

[modifier] Cœrcition ascendante

Dans le cadre d'un langage objet, la cœrcition ascendante permet de prendre une instance de la sous-classe pour une instance directe de la super-classe. Cela peut servir à empêcher l'utilisation d'une méthode m spécifique à la sous-classe B, pour la remplacer par la méthode m d'une super-classe A (en considérant bien sûr que B est une sous-classe de A).

[modifier] Cœrcition descendante

Elle consiste à convertir le type statique de la valeur vers son type dynamique. Elle permet ainsi de faire réapparaître statiquement le type dynamique de l'objet. Elle est par exemple utilisée en Java lors de l'utilisation de collection.

Les cœrcitions ascendante et descendante ne sont pas une réelle conversion de type dans le sens où il n'y a pas de transformation physique de la valeur. Il s'agit essentiellement d'une indication donnée au compilateur sur la façon dont il doit compiler un certain envoi de message.


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -