- Struct / User-defined Types
- Enum Types
- Simple / Built-in Types
Notes on Value Types:
- contains the actual data instead of just a reference to the data.
- stored in the stack memory
- an operation to a copy of a variable doesn't affect the other copies
- derived implicitly from System.ValueType
- has an implicit default constructor that initialises the default value
- may contain a NULL value