Lecture 00 Introduction
Lecture 00 Introduction
COURSE INTRODUCTION
MUHAMMAD ZEESHAN SABIR
CAPITAL UNIVERSITY OF SCIENCE AND TECHNOLOGY 1
COURSE POLICIES
• Assessment Policy
No makeup for assignments, quizzes and projects. No Exception
Quizzes will be announced, No Best of Quizzes/Assignments
No best of Quizzes/Assignments
• Attendance Policy
Attendance will be marked at any time during the class.
Check your attendance during the class.
You are required to be present in at least 75% of the classes
[email protected] 2
ZERO TOLERANCE OF CHEATING
[email protected] 3
COURSE INTRODUCTION
• Recommended Book(s)
Object-Oriented Programming In C++ Author: Robert Lafore, Fourth
Edition
• Reference Book(s)
C++: How To Program (Fourth Edition), Deitel & Deitel, Prentice-Hall
An Introduction To Object Oriented Programming, Timothy Budd,
Second Edition
[email protected] 4
COURSE INTRODUCTION
• Course Objectives
Emphasis of this course is on intensive study of object-oriented programming
using C++
Abstract data types, object instantiation, inheritance, polymorphism,
composition, member access control, templates, overloaded operators,
exception handling, use of C++ headers, and class libraries will be studied
[email protected] 5
CONTENTS
• Introduction and Revision
Introduction of the course
Overview of Structured Programming using C++
Pointers Revision
Introduction to classes and Object Oriented Concepts
• Creating classes
Function Overloading, C++ Constructor & Destructor
Importance of Destructor, Calling sequence of Constructor & Destructor for
multiple objects
Preventing changes in data members from a method: const method
Pointer to Object; Object as argument to function (call by value & call by
reference);
[email protected] 6
CONTENTS CONT..
• Composition of classes
• Friend classes and functions
Friend functions
Friend class
• Operator overloading
Operator Overloading
Binary Operator NOT receiving Instance of class as 1st operand
Overloading Binary Operators for I/O stream
Overloading Unary Operator: as member, as non-member
Unusual Operators: ++, --, [ ] (set & get, both versions), type-cast
[email protected] 7
CONTENTS CONT..
• Inheritance in OOP
C++ Inheritance Concepts
Relationships in OOP
C++ Multiple Level Inheritance, Multiple Inheritance
• Virtual classes and Polymorphism
Virtual inheritance
Polymorphism in C++ and Java
Virtual Functions
[email protected] 8
CONTENTS CONT..
• Streams
C++ Streams
• Template classes and functions
Function Template
Class Template
[email protected] 9
GENERAL INSTRUCTIONS
[email protected] 10
EVALUATION CRITERIA
Grading Marks
Assignments 15%
Quizzes 15%
Project 10%
Mid Exam 20%
Final Exam 40%
[email protected] 11
GENERAL INSTRUCTIONS CONT..
• Communication
Via email:
[email protected]
Office
C – Block (2st Floor)
Contact CR (for urgent response)
[email protected] 12
THIS IS A ADVANCE COURSE…!
It is expected to be CHALLENGING
I expected you to WORK HARD
IMPORTANCE OF PROGRAMMING
WELCOME TO OBJECT ORIENTED PROGRAMMING
Let’s Start