Skip to content
VUBuddy

CS304 Highlighted Handouts Lectures 1-45

Object Oriented Programming PDF 7.7 MBUpdated 23 Oct 2026
Highlighted handout CS304 Highlighted Handouts Lectures 1-45 PDF 7.7 MB
vubuddy.com
Type
Highlighted handout
Course
CS304 Object Oriented Programming
Size
PDF 7.7 MB
Updated
23 Oct 2026
Free download 0 of 3 used today
Download free · 7.7 MB

You get 3 free files a day on the website. Add the Chrome extension for 30 a day.

Unlimited downloads in the Android app Get it free on Google Play

Preview text

Text from pages 2, 3, 4 of 355. Download the file for all 355 pages.

SIMPLE ASSOCIATION · POLYMORPHISM – ADVANTAGES · POLYMORPHISM IN OO MODEL · INTERFACE · ENCAPSULATION

WHAT IS AN OBJECT?

OBJECT-ORIENTATION - ADVANTAGES · DEFINING A NEW USER DEFINED TYPE · CLASS · SUB-TYPING (EXTENSION)

  1. 1.
  2. 2. WHAT IS A MODEL? ......................................................................................................... 10
  3. 3. OO MODELS ................................................................................................................................................... 11

01.4.

............................................................................ 12

01.5.

.......................................................................................................... 12

  1. 6. TANGIBLE AND INTANGIBLE OBJECTS ................................................................................................. 13
  2. 7. SUMMARY ............................................................................................................................................................................... 14

02.1.

INFORMATION HIDING.................................................................................................................................................... 15

02.2.

.................................................................................................................. 16

02.3.

............................................................................................................................ 17

  1. 4. IMPLEMENTATION ............................................................................................................................................................. 18
  2. 5. SEPARATION OF INTERFACE & IMPLEMENTATION ......................................................................... 19
  3. 6. MESSAGES........................................................................................................................................................ 19
  4. 7. SUMMARY ............................................................................................................................................................................... 19
  5. 1. ABSTRACTION ...................................................................................................................................................................... 21
  6. 2. CLASSES ............................................................................................................................................................ 23
  7. 3.
  8. 1. CONCEPTS RELATED WITH INHERITANCE .......................................................................................... 29
  9. 2. GENERALIZATION .............................................................................................................................................................. 29

04.3.

.................................................................................................. 31

  1. 4.
  2. 5. OVERRIDING ................................................................................................................................................... 34

04.6.

............................................................................................................. 36

04.7.

............................................................................................................ 38

05.3.

......................................................................................................... 50

05.4.

.................................................................................................................... 52

05.5.

..................................................................................................................... 54

  1. 1. CLASS COMPATIBILITY ................................................................................................................................................... 55
  2. 2.

06.3.

........................................................................................ 56

06.4.

...................................................................................... 57

06.5.

OBJECT-ORIENTED MODELING AN EXAMPLE ................................................................................................... 57

07.1.

.................................................................................................................................... 65

  1. 2. TYPE IN C++ ...................................................................................................................... 65
  2. 3. ABSTRACTION ...................................................................................................................................................................... 66

07.4.

............................................................................ 66

  1. 5. OBJECT AND CLASS ...................................................................................................................................... 68
  2. 6. ACCESSING MEMBERS .................................................................................................................................. 68
  3. 7. ACCESS SPECIFIERS ...................................................................................................................................... 69

FRIEND FUNCTIONS · MEMBER INITIALIZER LIST · DIFFERENCE BETWEEN INITIALIZATION AND ASSIGNMENT · DEFAULT CONSTRUCTOR · CONSTRUCTOR PROPERTIES · BREAKUP OF NEW OPERATION

  1. 1. MEMBER FUNCTIONS ...................................................................................................................................................... 72
  2. 2. DEFINING MEMBER FUNCTIONS ............................................................................................................ 72
  3. 3. INLINE FUNCTIONS ...................................................................................................................................... 73
  4. 4. CONSTRUCTOR .................................................................................................................................................................... 75

08.5.

............................................................................................... 75

08.6.

.................................................................................................... 76

  1. 7. CONSTRUCTOR OVERLOADING ............................................................................................................... 77
  2. 8. CONSTRUCTOR OVERLOADING ............................................................................................................... 78
  3. 9. COPY CONSTRUCTOR.................................................................................................................................. 79
  4. 10. SHALLOW COPY ........................................................................................................................................................... 81
  5. 11. DEEP COPY ..................................................................................................................................................................... 82
  6. 1. SHALLOW COPY ............................................................................................................................................ 85
  7. 2. DEEP COPY ............................................................................................................................................................................ 90
  8. 3. IMPORTANT POINTS ABOUT COPY CONSTRUCTOR ......................................................................... 94
  9. 4. DESTRUCTOR ....................................................................................................................................................................... 94
  10. 5. ACCESSOR FUNCTIONS ............................................................................................................................... 95
  11. 6. THIS POINTER...................................................................................................................................................................... 96
  12. 1. USES OF THIS POINTER ............................................................................................................................. 99
  13. 2. SEPARATION OF INTERFACE AND IMPLEMENTATION .................................................................... 99
  14. 3. COMPLEX NUMBER ........................................................................................................................................................ 100
  15. 4. CONST MEMBER FUNCTIONS ................................................................................................................ 102
  16. 5. THIS POINTER AND CONST MEMBER FUNCTION .......................................................................... 104

11.1.

USAGE EXAMPLE OF CONSTANT MEMBER FUNCTIONS ............................................................... 105

11.2. · :........................................ 106 · 11.3.

............................................................................................... 106

  1. 4. CONST OBJECTS................................................................................................................................................................ 107
  2. 5. STATIC VARIABLES ........................................................................................................................................................ 109
  3. 1. ACCESSING STATIC DATA MEMBER .................................................................................................. 113
  4. 2. LIFE OF STATIC DATA MEMBER ......................................................................................................... 114
  5. 3. STATIC MEMBER FUNCTION ................................................................................................................ 115
  6. 4. THIS POINTER AND STATIC MEMBER FUNCTIONS ........................................................................ 116
  7. 5. GLOBAL VARIABLE VS. STATIC MEMBERS...................................................................................... 116
  8. 6. ARRAY OF OBJECTS ....................................................................................................................................................... 116

13.1.

POINTER TO OBJECTS .................................................................................................................................................. 118

13.2.

......................................................................................... 119

  1. 3. CASE STUDY ................................................................................................................................................ 119
  2. 4. COMPLETE CODE OF DATE CLASS ....................................................................................................... 121

14.1.

.................................................................................................................... 124

15.1.

................................................................................................................... 135

15.2.

........................................................................................................... 138

16.1.

OPERATOR OVERLOADING......................................................................................................................................... 142

17.1.

OVERLOADING ASSIGNMENT OPERATOR .......................................................................................................... 151

  1. 1. SELF ASSIGNMENT PROBLEM .................................................................................................................................... 155
  2. 2. OTHER BINARY OPERATORS ................................................................................................................. 156
  3. 3. FRIEND FUNCTIONS AND OPERATOR OVERLOADING .................................................................. 157
  4. 1. STREAM INSERTION OPERATOR .......................................................................................................... 158
  5. 2. STREAM EXTRACTION OPERATOR ...................................................................................................... 158
  6. 3. OVERLOADING STREAM INSERTION OPERATOR .......................................................................... 159
  7. 4. OVERLOADING STREAM EXTRACTION OPERATOR ...................................................................... 160
  8. 5. OTHER BINARY OPERATORS ................................................................................................................. 161
  9. 1. SUBSCRIPT [] OPERATOR .......................................................................................................................................... 164
  10. 2. OVERLOADING SUBSCRIPT [] OPERATOR ....................................................................................... 164
  11. 3. OVERLOADING FUNCTION () OPERATOR .......................................................................................................... 165
  12. 4.

FUNCTION OPERATOR PERFORMING SUB STRING OPERATION, ................................... 165

  1. 5. UNARY OPERATORS ...................................................................................................................................................... 166
  2. 1. BEHAVIOR OF ++ AND -- FOR PRE-DEFINED TYPES ..................................................................... 168
  3. 2. POST-INCREMENT OPERATOR ................................................................................................................................. 169
  4. 3. TYPE CONVERSION......................................................................................................................................................... 170
  5. 4.
  6. 5. DRAWBACKS OF TYPE CONVERSION OPERATOR ......................................................................... 174
  7. 1.

PRACTICAL IMPLEMENTATION OF INHERITANCE IN C++ .............................................. 175

  1. 2. INHERITANCE IN CLASSES ...................................................................................................................... 175
  2. 3. UML NOTATION ........................................................................................................................................ 175
  3. 4. INHERITANCE IN C++ .................................................................................................... 175
  4. 5. “IS A” RELATIONSHIP ............................................................................................................................. 176
  5. 1. ACCESSING BASE CLASS MEMBER FUNCTIONS IN DERIVED CLASS ..................................... 183
  6. 2. “PROTECTED” ACCESS SPECIFIER ......................................................................................................................... 185
  7. 3. “IS A” RELATIONSHIP ............................................................................................................................. 186
  8. 4. STATIC TYPE ..................................................................................................................................................................... 189

24.1.

MODIFIED DEFAULT CONSTRUCTOR .................................................................................................................. 199

  1. 1. OVERLOADING VS. OVERRIDING.......................................................................................................... 207
  2. 2. HIERARCHY OF INHERITANCE .............................................................................................................. 211
  3. 1. BASE INITIALIZATION ............................................................................................................................................................................. 213
  4. 2. TYPES OF INHERITANCE.............................................................................................................................................. 214
  5. 3. PRIVATE INHERITANCE ............................................................................................................................................... 216
All CS304 files →
CS304 Object Oriented Programming All CS304 handouts, past papers, quizzes and MCQs in one place. Open course page

Get more out of VUBuddy, for free

Android app Free on Google Play
  • Unlimited downloads
  • The explanation behind every MCQ answer
  • Study offline on slow data
Get the Android app
Chrome extension Free on the Chrome Web Store
  • 30 downloads a day instead of 3
  • Sign in and buy Pro Semester here
Add to Chrome

One Pro Semester membership works in both the extension and the app.