Your SlideShare is downloading. ×
OOPS Advanced
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

OOPS Advanced

295
views

Published on

Last lecture on OOPS

Last lecture on OOPS

Published in: Education, Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
295
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
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.     OOPs – Advanced
  • 2.     OOPs – Const Dest ● Constructor : Things to do when a new  object is created ● Destructor : Things to do when object's life  ends. 
  • 3.     OOPs – Const Dest
  • 4.     OOPs – More Constructors
  • 5.     OOPs – More Constructors :  ERRATA
  • 6.     Lets answer the TRICK Question
  • 7.     Lets do the TRICK Question 15 years back, before C++ came in, Address(cool) = Address(coolness) COMPILER OPTIMIZATION!
  • 8.     Lets answer the TRICK Question ● While making a COPY of the parameter, the  Copy­constructor of the parameter should  be called! ● Thus the compiler optimization was invalid.
  • 9.     OOPs – Interfaces ● Class definition, no logic ● Defines what functions and data (vars)  should be present in the Class that  IMPLEMENTS an interface. ●
  • 10.     OOPs – Interfaces
  • 11.     OOPs – Interfaces
  • 12.     OOPs – Abstract Class ● Small extension of Interfaces ● Instead of requiring subclass to implement  ALL virtual functions, it also defines some  function's body.
  • 13.     OOPs – Abstract Class
  • 14.     OOPs – Virtual keyword OUTPUT for each?
  • 15.     OOPs – Virtual keyword
  • 16.     OOPs – Static Variables
  • 17.     OOPs – Static Variables
  • 18.     OOPs – Inline functions
  • 19.     OOPs – Friend Function PS: Never encountered a good use for a friend function  :­/
  • 20.     OOPs – Static Var and Function Output?
  • 21.     OOPs – Static Var and Function
  • 22.     OOPs – Namespace
  • 23.     OOPs – Namespace
  • 24.     OOPs – Namespace
  • 25.     OOPs – Namespace
  • 26.     OOPs – Shallow Copy Output?
  • 27.     OOPs – Shallow Copy
  • 28.     OOPs – Deep Copy Output?
  • 29.     OOPs – Deep Copy
  • 30.     Inheritance ­ advanced ● Types of inheritance : ● Public  ● Private  ● Protected
  • 31.     Inheritance ­ advanced ● Types of inheritance : ● Public  ● Private  ● Protected
  • 32.     Inheritance ­ advanced ● Types of inheritance : ● Public  ● Private  ● Protected
  • 33.     CLASS DIAGRAM READUP : UML Elements
  • 34.     QUESTIONS
  • 35.     Q) Variables ● What is the size of a NULL value in C++?
  • 36.     Q) Variables ● What is the size of a NULL value in C++? ● 1 Byte
  • 37.     Q) Functions ● Python uses which of the following? ● Call by value ● Call by reference ● Both, interchangeably ● None of the above
  • 38.     Q) Functions ● Python uses which of the following? ● Call by value ● Call by reference ● Both, interchangeably ● None of the above : It uses Call­by­object
  • 39.     Q) C'tors and d'tors OUTPUT?
  • 40.     Q) C'tors and d'tors
  • 41.     Q) This pointer What is the error here?
  • 42.     Q) What are the OOPs conepts  used here?
  • 43.     Q) Inheritance WHAT VARIABLES ARE ACCESSIBLE TO Function foo() ?
  • 44.     Q) Inheritance WHAT VARIABLES ARE ACCESSIBLE TO Function foo() ? a_v1, a_v2, b_v2, b_v3, c_v2, c_v3 WHAT VARIABLES ARE ACCESSIBLE TO Object d?
  • 45.     Q) Inheritance WHAT VARIABLES ARE ACCESSIBLE TO Function foo() ? a_v1, a_v2, b_v2, b_v3, c_v2, c_v3 WHAT VARIABLES ARE ACCESSIBLE TO Object d? a_v2, c_v3
  • 46.     Q) This pointer What is the error here?
  • 47.     Q) Interfaces and Abs Class ● Can you instanciate an object of an Abstract  class?
  • 48.     Q) Interfaces and Abs Class ● Can you instanciate an object of an Abstract  class? ● NO
  • 49.     Q) Interfaces and Abs Class ● Can a function be final and virtual at the  same time?
  • 50.     Q) Interfaces and Abs Class ● Can you instanciate an object of an Abstract  class? ● NO – Virtual functions HAVE to be over­ridden – Final functions CANNOT be over­ridden

×