Your SlideShare is downloading. ×
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Constructor & Destructor
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Constructor & Destructor

8,891

Published on

I am PGT(Comp. Sc) in KV(AFS) Utarlai …

I am PGT(Comp. Sc) in KV(AFS) Utarlai
publishing Constructor and Destructor for
Class XII

Published in: Education, Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
8,891
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
504
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Constructor & Destructor
  • 2. Constructors
    • Def- A constructor is a special member function that is a member of a class and has same name as that class.
    • Use- It is used to initialize the object of the class type with a legal initial value.
  • 3. Special Characteristics of Constructors
    • These are called automatically when the objects are created.
    • All the objects of the class having a constructor are initialized before some use.
    • These should be declared in the public section for availability to all the functions.
    • Constructor has no return type even void.
    • They can not be inherited.
    • These cannot be static.
    • Default and copy constructor are generated by the compiler whenever required. Generated constructors are public.
    • Constructors can have default argument as other C++ functions.
  • 4. Declaration and Definition
    • It can be defined either inside the class definition or outside the class definition
    • class X { int i ;
    • public:
    • int j,k ;
    • X() { i = j = k =0;}
    • };
  • 5.
    • class X { int i ;
    • public:
    • int j,k ;
    • X() { i = j = k =0;}
    • };
    • X::X()
    • {
    • I = j = k =0;
    • }
  • 6. Note
    • Generally a constructor should be defined under the public section of a class, so that its object can be created in any function
  • 7.
    • class X { int i ;
    • X() { i = j = k =0;}
    • public:
    • int j,k ;
    • void check(void); // member function
    • };
    • void X :: check (void)
    • {
    • X obj1; //valid
    • }
    • int main()
    • {
    • X obj2; //invalid
    • }
  • 8. Default constructor
    • A constructor that accept no parameter is called the default constructor.
  • 9. Copy Constructor
    • A copy Constructor is used to initialize an object from another object.
    • If you have not defined a copy constructor, the complier automatically creates it and it is public
    • Copy constructor always takes argument as a reference object.
    • Consider the following class definition
  • 10. class sample { int i, j; public: sample ( int a, int b) { i = a; j = b; } sample ( sample & s) { i = s.i ; j = s.j ; } void print(void) { cout<<i <<“ “<<j <<“ ”; } Above constructors may be used as follows sample s1 (10,12); //1 st const. called sample s2 (s1) // copy const. called sample s3 = s1; copy const. called
  • 11. Home work
    • In a class does not define a constructor, what will be the initial value of its object.
    • What are the significance of default constructor.
    • How many situations when a copy constructor is automatically called.
  • 12. Default Arguments
    • Just like any other function a constructor can also have default arguments
    • This constructor is equivalent to default constructor. Because its also allows us to create objects without any value provided.
    • For example
  • 13.
    • class A
    • {
    • int i,j;
    • public:
    • X(int x=10,int y=20);
    • };
    • A::X(int x,int y)
    • {
    • i=x;
    • j = y;
    • }
    int main() { A obj1; A obj2(250); A obj3(2,4); getch(); return 0; } i=10 j=20 i=250 j=20 i=2 j=4 obj1 obj2 obj3
  • 14. Order of Constructor Invocation
    • The objects are constructed in the order they are defined. Consider the following statement
    • Sample s1,s2,s3; // the order of construction is s1,s2,s3.
    • But when a class containing objects of another class as its members. In such a case, the constructor for member objects are invoked first and then only, the constructor for containing class is invoked.
    • For example
  • 15.
    • class A
    • {
    • public:
    • A()
    • {
    • cout<<“Constructing A”
    • <<endl;
    • }};
    • class B
    • {
    • public:
    • B()
    • {
    • cout<<“Constructing B”
    • <<endl;
    • }};
    class C { private: A objA; B objB; public: C() { cout<<“Constructing C” <<endl; }}; int main() { clrscr(); C objC; getch(); }

×