Data Location: Value & Reference
Solidity variables can be classified according to their data location. There are two types:
Value types
Reference types
Value type
A value type stores its data directly in the memory it owns. Variables of this type are duplicated whenever they appear in functions or assignments. A value type will maintain an independent copy of any duplicated variables.
uint
,int
,address
,bool
,enum
,bytes
Reference type
A reference type stores the address of the data’s location; acts as a pointer to a value stored elsewhere.
If you examine the location of where the reference type was created, it will contain the pointer directing us to the actual location of the value; not the value itself.
mapping
,struct
,array
string arrays, byte arrays, array members, fixed/dynamic arrays
Last updated