reference and value types in c# code example

Example: c# value types

// ---------------- Value Type vs Reference Type ----------------------//

// Data types are separated into value types and reference types. 
// Value types are either stack-allocated or allocated inline in a structure. 
// Reference types are heap-allocated. Both reference and value types are 
// derived from the ultimate base class Object

// Aside from serving as the base class for value types in the .NET Framework, 
// the ValueType structure is generally not used directly in code. However, 
// it can be used as a parameter in method calls to restrict possible 
// arguments to value types instead of all objects, or to permit a method to 
// handle a number of different value types. ValueType helps prevent reference 
// types from being passed to methods.