![MyPrivateTutor](https://www.learnpick.in/files/medialibrary/be40add9e89cfe73e42d96e8233469b3.png)
Upon completion of this course, students will be able to: Explain how object-oriented software engineering enhances the software development process. Identify the major elements in an object-oriented programming language. Implement the concepts of data abstraction and encapsulation in the creation of abstract data types. Implement operator overloading. Use inheritance in C++. Select the proper class protection mechanism. Demonstrate the use of virtual functions to implement polymorphism. Write programs utilizing the I/O classes in C++. Understand some advanced features of C++ including templates, exceptions, and multiple inheritance. Compare the object vs the procedural approach to writing software. Use correct object oriented terminology. Define and use classes in a C++ program. Create and use abstract data types. Derive classes using inheritance in C++. Implement polymorphism by using virtual functions in a program.