What are the difference between class and structure in C#?

Published on June 2, 2013 by abundantcode

Filed under C#

Last modified June 2, 2013

Print this page

rate 1 star rate 2 star rate 3 star rate 4 star rate 5 star
Your rating: none, Average: 0 (0 votes)

This article have been viewed 7633 times

What are the difference between class and structure in C#?

Structure

  • Struct are value types.
  • They can be empty but a null cannot be assigned to Struct
  • Structs cannot contain explicit parameterless constructors.
  • Doesn’t support Inheritance and cannot use the protected or protected internal modifier.
  • A Struct always has a built-in public default constructor.
  • Cannot use the “as” operator.
  • Cannot have a destructor
  • Cannot be abstract

Class

  • Classes are reference types.
  • Classes can be nothing – the reference can point to a null.
  • Classes can have explicit parameterless constructors
  • Supports Inheritance
  • Cannot inherit from another class but can implement interface
  • Can use all access modifiers
  • A class can use “as” operator.
  • Can have a destructor.
  • Can be abstract

Leave a Comment


x

You might be Interested in these Posts

How to decode a base64 string in C#?

Here's a sample code snippet demonstrating how you can easily decode a base64 encoded string in C#. ...

How to disable editing of items in a combo box in c#?

When working in Win forms using C# and especially when you use the combo box , you would have notice...

C# Program to swap two numbers without using temporary variable

Problem Write a program in Visual CSharp to swap two numbers using temporary variable and display t...