You are on page 1of 2

SUBJECT TITLE: OOP Principles and Practices using C++

SUBJECT CODE:18CS42 No. of Credits:3:0:0 No. of Lecture hours


per week:3
Exam Duration :3 hours Exam Marks: 100 Total No. of Lecture
hours:42
Course Objectives
The objectives of this course are to:
1. Understand the philosophy of object-oriented programming and the concepts of encapsulation,
abstraction, inheritance, and polymorphism.
2. Implement the concept of constructors and destructors.
3. Design and test the implementation among objects using a class hierarchy and inheritance.
4. Identify the relationship between the run time polymorphism and compile time
polymorphism.
5. Implement file I/O operations, exception handling mechanisms and STL.

No. of
Unit
Syllabus Content Lecturer
No
hours
Introduction: Overview of C++, Basic concepts of OOP, Sample C++ program, operators
in C++, Function basics, inline functions, function overloading.
1 Classes and Objects: Class Specification, Defining member functions, Static members, 10
Friend functions and classes, Passing objects as arguments, Returning objects, Arrays of
objects, Constructors, Destructors, Templates: Generic functions and classes.
Operator overloading: Rules, Overloading +, - , pre-increment, post-increment, [ ], <<,
>> using friend functions.
2 Inheritance: Types, Inheritance and protected members, Inheriting multiple base classes, 08
Constructors, Destructors and Inheritance, Passing parameters to base class constructors,
Granting access, Virtual base classes.
Virtual functions and Polymorphism: Virtual functions, Calling a Virtual function
through a base class reference, Virtual attribute is inherited, Virtual functions are
3 08
hierarchical, Pure virtual functions, Abstract classes, Using virtual functions, Early and late
binding.
I/O System Basics and File I/O: C++ stream classes, Formatted I/O, Manipulators,
fstream and the File classes, Opening and closing a File, Reading and Writing Text Files,
4 08
Unformatted and Binary I/O, Random Access
Namespaces : Fundamentals, using, options, the std namespace
SELF-STUDY –
Exception Handling: Exception handling fundamentals, Handling Derived-Class
5 08
Exceptions, Exception handling options
STL: An overview, The container classes, vectors, lists, maps.
Course Outcomes
At the end of the course students should be able to:

Course Statements Blooms


Outcomes Level

CO1 Identify the classes, objects, members of a class and the relationships L2
among them to solve a specific problem.
CO2 Illustrate the concept of constructors and destructors and describe the L2
mechanism of overloading the operators.
CO3 Examine the concept of data encapsulation, inheritance and function L3
templates as used in C++ programming language.
CO4 Discover the commonly used operations involving the file operations and L3
manipulators.
CO5 Interpret the concepts of exception handling and the built-in standard L3
template library.

Course POs PSOs

Outcom PO PO PO PO PO PO PO PO PO PO PO PO1 PS PS PS
es 1 2 3 4 5 6 7 8 9 10 11 2 O1 O2 O3

CO1 2 3 2 2 1 - - - - - - - 1 2 -

CO2 2 3 2 2 1 - - - - - - - 1 2 -

CO3 2 2 3 2 1 - - - - - - - 2 3 -

CO4 2 2 3 2 1 - - - - - - - 1 2 -

CO5 2 3 3 2 1 - - - - - - - 2 2 -

Text Book(s)

1. Herbert Schildt, “The Complete Reference C++, 5th Edition”, Tata McGraw Hill, 2013.
ISBN - 978-0071634809
Reference Book(s)
1. Stanley B.Lippmann, JoseeLajore, “C++ Primer, 5th Edition”, Addison Wesley, 2013. ISBN
- 978-0321714114
2. E Balagurusamy, “Object Oriented Programming with C++”, 6th Edition, Tata McGraw Hill,
2013. ISBN - 9781259029936
3. Paul J Deitel, Harvey M Deitel, “C++ for Programmers”, Pearson Education, 2009. ISBN -
9780137018475

You might also like