Difference between structure and class

Structure use public modifier by default
Class use private modifier by default
In concept of inheritance, derived structure is public by default when access modifier doesn’t use in base class.
In case of class concept, derived class is private by default when access modifier doesn’t use in base class.
Use ‘struct’ keyword in language c, c# and ‘structure’ keyword use in VB for implementing structure block
Use ‘class’ keyword for implementing class block.
Structure is a collection of bits.
Class is a collection of members of society.
Structure is based on procedural approach
Class is based on object-oriented approach.
It doesn’t support Data hiding concepts. Means you can’t implement security in it.
You can implement security in it Using data hiding.
It is a value type
It is reference type
Size of empty structure is 0 byte
Size of empty class is 1 byte
In case of template, we can’t use it.
Always we use class in case of structure.
template<struct T> // ERROR, struct not allowed here
template<class T> // OK
Structure may represent real world object.
Class is highly suitable to represent real world objects rather than "Structures"
Structure value will be stored in stack memory
Class members are stored in heap memory.
Structure used for light weight object.
Class is used for complex data type


Popular posts from this blog

difference between structure and union in C Language

Difference between Linear search and Binary Search in c language

Difference between static and dynamic websites