В програмуванні, типи даних можна розподілити на дві категорії: значеннєвий тип (також тип-значення, англ. value type) і посилальний тип (також тип-посилання, англ. reference type). Величина значеннєвого типу зберігає фактичне значення. Значенням посилального типу є посилання на якесь значення.
Класифікація за мовою
Мова | Значеннєвий тип | Посилальний тип |
---|---|---|
booleans, characters, integer numbers, floating-point numbers, classes (включаючи strings, lists, maps, sets, stacks, queues), enumerations | references, pointers | |
Java | booleans, characters, integer numbers, floating-point numbers | arrays, classes (включаючи immutable strings, lists, dictionaries, sets, stacks, queues, enumerations), interfaces, null pointer |
C# | structures (включаючи booleans, characters, integer numbers, floating-point numbers, fixed-point numbers, lists, dictionaries, sets, stacks, queues, optionals), enumerations | classes (включаючи immutable strings, arrays, tuples, lists, dictionaries, sets, stacks, queues), interfaces, pointers |
Swift | structures (включаючи booleans, characters, integer numbers, floating-point numbers, fixed-point numbers, immutable strings, tuples, lists, dictionaries, sets, stacks, queues), enumerations (включаючи optionals) | functions, classes, interfaces |
Python | classes (включаючи immutable booleans, immutable integer numbers, immutable floating-point numbers, immutable complex numbers, immutable strings, byte strings, immutable byte strings, immutable tuples, immutable ranges, immutable memory views, lists, dictionaries, sets, immutable sets, null pointer) | |
JavaScript | immutable booleans, immutable floating-point numbers, immutable symbols, immutable strings, undefined, prototypes (включаючи lists, null pointer) | |
OCaml | immutable characters, immutable integer numbers, immutable floating-point numbers, immutable tuples, immutable enumerations (включаючи immutable units, immutable booleans, immutable lists, immutable optionals), immutable exceptions, immutable formatting strings | arrays, immutable strings, byte strings, dictionaries (включаючи pointers) |
Пакування та розпакування
Мови програмування, які відокремлюють значеннєві типи і посилальні типи, зазвичай пропонують механізм під назвою пакування (англ. boxing), для обгортання деяких або усіх значеннєвих типів у посилальні. Це дозволяє використовувати значеннєві типи у тих контекстах, де очікуються посилальні типи. Зворотний процес, для розгортання значеннєвого типу, називається розпакуванням (англ. unboxing).
Див. також
Примітки
- Brown, Erik E. (2006). . Shelter Island, New York: Manning. с. 703. ISBN . Архів оригіналу за 16 серпня 2018. Процитовано 8 квітня 2020.
- Stephens, Rod (2014). . Indianapolis, Indiana: John Wiley & Sons. с. 57. ISBN . Архів оригіналу за 16 серпня 2018. Процитовано 8 квітня 2020.
- . en.cppreference.com. Архів оригіналу за 13 листопада 2020. Процитовано 8 квітня 2020.
- . docs.oracle.com. Архів оригіналу за 29 серпня 2020. Процитовано 8 квітня 2020.
- . docs.microsoft.com. Архів оригіналу за 26 листопада 2020. Процитовано 8 квітня 2020.
- . docs.swift.org. Архів оригіналу за 11 грудня 2020. Процитовано 8 квітня 2020.
- . docs.swift.org. Архів оригіналу за 6 лютого 2021. Процитовано 8 квітня 2020.
- . docs.python.org. Архів оригіналу за 14 червня 2020. Процитовано 8 квітня 2020.
- . www.ecma-international.org. Архів оригіналу за 13 січня 2021. Процитовано 8 квітня 2020.
- . caml.inria.fr. Архів оригіналу за 2 липня 2020. Процитовано 8 квітня 2020.
- . caml.inria.fr. Архів оригіналу за 22 липня 2020. Процитовано 8 квітня 2020.
На цю статтю не посилаються інші статті Вікіпедії. Будь ласка розставте посилання відповідно до . |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
V programuvanni tipi danih mozhna rozpodiliti na dvi kategoriyi znachennyevij tip takozh tip znachennya angl value type i posilalnij tip takozh tip posilannya angl reference type Velichina znachennyevogo tipu zberigaye faktichne znachennya Znachennyam posilalnogo tipu ye posilannya na yakes znachennya Klasifikaciya za movoyuMova Znachennyevij tip Posilalnij tip C booleans characters integer numbers floating point numbers classes vklyuchayuchi strings lists maps sets stacks queues enumerations references pointers Java booleans characters integer numbers floating point numbers arrays classes vklyuchayuchi immutable strings lists dictionaries sets stacks queues enumerations interfaces null pointer C structures vklyuchayuchi booleans characters integer numbers floating point numbers fixed point numbers lists dictionaries sets stacks queues optionals enumerations classes vklyuchayuchi immutable strings arrays tuples lists dictionaries sets stacks queues interfaces pointers Swift structures vklyuchayuchi booleans characters integer numbers floating point numbers fixed point numbers immutable strings tuples lists dictionaries sets stacks queues enumerations vklyuchayuchi optionals functions classes interfaces Python classes vklyuchayuchi immutable booleans immutable integer numbers immutable floating point numbers immutable complex numbers immutable strings byte strings immutable byte strings immutable tuples immutable ranges immutable memory views lists dictionaries sets immutable sets null pointer JavaScript immutable booleans immutable floating point numbers immutable symbols immutable strings undefined prototypes vklyuchayuchi lists null pointer OCaml immutable characters immutable integer numbers immutable floating point numbers immutable tuples immutable enumerations vklyuchayuchi immutable units immutable booleans immutable lists immutable optionals immutable exceptions immutable formatting strings arrays immutable strings byte strings dictionaries vklyuchayuchi pointers Pakuvannya ta rozpakuvannyaDokladnishe Movi programuvannya yaki vidokremlyuyut znachennyevi tipi i posilalni tipi zazvichaj proponuyut mehanizm pid nazvoyu pakuvannya angl boxing dlya obgortannya deyakih abo usih znachennyevih tipiv u posilalni Ce dozvolyaye vikoristovuvati znachennyevi tipi u tih kontekstah de ochikuyutsya posilalni tipi Zvorotnij proces dlya rozgortannya znachennyevogo tipu nazivayetsya rozpakuvannyam angl unboxing Div takozhPrimitivnij tip danih Skladenij tip danihPrimitkiBrown Erik E 2006 Shelter Island New York Manning s 703 ISBN 978 1 932 39465 8 Arhiv originalu za 16 serpnya 2018 Procitovano 8 kvitnya 2020 Stephens Rod 2014 Indianapolis Indiana John Wiley amp Sons s 57 ISBN 978 1 118 84728 2 Arhiv originalu za 16 serpnya 2018 Procitovano 8 kvitnya 2020 en cppreference com Arhiv originalu za 13 listopada 2020 Procitovano 8 kvitnya 2020 docs oracle com Arhiv originalu za 29 serpnya 2020 Procitovano 8 kvitnya 2020 docs microsoft com Arhiv originalu za 26 listopada 2020 Procitovano 8 kvitnya 2020 docs swift org Arhiv originalu za 11 grudnya 2020 Procitovano 8 kvitnya 2020 docs swift org Arhiv originalu za 6 lyutogo 2021 Procitovano 8 kvitnya 2020 docs python org Arhiv originalu za 14 chervnya 2020 Procitovano 8 kvitnya 2020 www ecma international org Arhiv originalu za 13 sichnya 2021 Procitovano 8 kvitnya 2020 caml inria fr Arhiv originalu za 2 lipnya 2020 Procitovano 8 kvitnya 2020 caml inria fr Arhiv originalu za 22 lipnya 2020 Procitovano 8 kvitnya 2020 Na cyu stattyu ne posilayutsya inshi statti Vikipediyi Bud laska rozstavte posilannya vidpovidno do prijnyatih rekomendacij