計算機編程中的數據類型可分為兩族:值類型(value type)與引用類型(reference type)。值類型的值就是實際值。引用類型的值是到其他值的引用[1][2]。
此條目目前正依照其他維基百科上的內容進行翻譯。 (2021年1月15日) |
各種程式語言的分類
語言 | 值類型 | 引用類型 |
---|---|---|
C++[3] | 布爾值、字符、整數、浮點數、類(包括字符串、列表、映射、集合、堆疊、隊列)、枚舉 | 參考,指針 |
Java[4] | 布爾值、字符、整數、浮點數 | 數組、類(包括不可變字符串、列表、字典、集合、堆疊、隊列、枚舉)、接口、空指針 |
C#[5] | structures (including booleans, characters, integer numbers, floating-point numbers, fixed-point numbers, lists, dictionaries, sets, stacks, queues, optionals), enumerations | classes (including immutable strings, arrays, tuples, lists, dictionaries, sets, stacks, queues), interfaces, pointers |
Swift[6][7] | structures (including booleans, characters, integer numbers, floating-point numbers, fixed-point numbers, mutable strings, tuples, mutable arrays, mutable dictionaries, mutable sets), enumerations (including optionals), and user-defined structures and enumerations composing other value types. | functions, closures, classes |
Python[8] | classes (including 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[9] | immutable booleans, immutable floating-point numbers, immutable integer numbers (bigint), immutable strings, immutable symbols, undefined, null | objects (including functions, arrays, typed arrays, sets, maps, weak sets and weak maps) |
OCaml[10][11] | immutable characters, immutable integer numbers, immutable floating-point numbers, immutable tuples, immutable enumerations (including immutable units, immutable booleans, immutable lists, immutable optionals), immutable exceptions, immutable formatting strings | arrays, immutable strings, byte strings, dictionaries (including pointers) |
裝箱和拆箱(boxing and unboxing)
區分值類型與引用類型的語言,典型包括了裝箱機制。即把一些甚至全部值類型包為引用類型。這使得值類型可用在需要引用類型的場合。逆過程稱為拆箱。
參見
參考文獻
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.