Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

Object-Oriented Programming and Functions

Packt via Coursera

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
This course features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. This course provides a deep dive into C++ functions, object-oriented programming (OOP), exception handling, debugging, and pointers—essential pillars for developing scalable and robust applications. You'll master how to write modular, reusable code using functions and create complex systems using classes and objects grounded in core OOP principles like encapsulation, inheritance, and polymorphism. The journey begins with functions, teaching you prototypes, parameter passing, recursion, and function overloading. You’ll reinforce these concepts with practical projects such as creating a Tic-Tac-Toe game and computing the average of numbers. Then, the course transitions into object-oriented programming, where you'll design custom classes and bring them to life with real-world examples like a Library Card or an Ice Cream Sundae class. Next, you’ll explore exceptions and debugging, learning how to write resilient code through structured error handling, logic checks, and custom exception classes. Finally, the course concludes with a strong foundation in pointers and dynamic memory management, helping you understand how C++ gives you powerful control over system memory. This course is ideal for learners who already understand C++ basics and are ready to take their skills to the next level. It’s perfect for computer science students, aspiring developers, and self-taught programmers aiming for deeper C++ proficiency. A basic understanding of variables, loops, and conditionals in C++ is recommended before enrolling. By the end of the course, you will be able to build and organize C++ programs using reusable functions, design robust object-oriented systems, manage memory with pointers, and handle exceptions gracefully for reliable code execution.

Syllabus

  • Functions
    • In this module, we will explore the power of functions in C++—a critical tool for writing clean, modular, and maintainable code. You’ll learn how to use parameters, return types, overloading, and recursion while working through hands-on projects like a Tic-Tac-Toe game and array-based calculators. By mastering functions, you’ll build the foundation for structured and reusable code in C++.
  • Introduction to Classes and Objects
    • In this module, we will introduce Object-Oriented Programming and walk through the creation and use of classes and objects in C++. You’ll build real-world examples like a Book class and Ice Cream Sundae class, learning about encapsulation, constructors, destructors, and more. These projects will help you move from procedural to object-oriented thinking in your C++ development.
  • Exceptions and Debugging
    • In this module, we will focus on writing robust C++ programs by mastering exception handling and debugging techniques. You’ll explore the exception hierarchy, learn to rethrow and create custom exceptions, and use debugging tools effectively. Through targeted projects like the Month Names and Custom Exception exercises, you’ll gain confidence in writing error-resilient code.
  • Pointers
    • In this module, we will demystify pointers—one of the most powerful and nuanced features of C++. You’ll learn how pointers work, how to manage dynamic memory, and why const correctness matters. With projects like Dynamically Creating Drones and Exhibits, you'll apply these concepts in meaningful ways that reinforce both theory and practice.

Taught by

Packt - Course Instructors

Reviews

Start your review of Object-Oriented Programming and Functions

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.