Structures : struct « struct « C# / CSharp Tutorial






A struct is similar to a class, but is a value type, not a reference type.

Here is the general form of a struct:

struct name : interfaces {
        // member declarations
    }
  1. Structures cannot inherit other structures or classes
  2. Structures cannot be used as a base for other structures or classes.
  3. A structure can implement one or more interfaces.
  4. Structure members can be methods, fields, indexers, properties, operator methods, and events.
  5. Structures can also define constructors, but not destructors.
  6. You cannot define a default (parameterless) constructor for a structure.
  7. A default constructor is automatically defined for all structures, and this default constructor can't be changed.
  8. Structure members cannot be specified as abstract, virtual, or protected.
  9. When new is used, the specified constructor is called.
  10. When new is not used, the object is still created, but it is not initialized.
  11. When you assign one structure to another, a copy of the structure object is made.








6.1.struct
6.1.1.Structures
6.1.2.Declare a simple struct
6.1.3.A simple struct with method
6.1.4.class vs struct
6.1.5.Reference value type in a struct
6.1.6.struct with value types
6.1.7.struct with value types and ref types
6.1.8.Difference between class and struct during the reference passing