100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.6 TrustPilot
logo-home
Lecture notes

CO2402 Advanced Programming with C++ Lecture 9 Notes

Rating
-
Sold
-
Pages
5
Uploaded on
05-08-2024
Written in
2023/2024

This document contains the comprehensive notes from Lecture 9 of the CO2402 course on Advanced Programming with C++. The lecture focuses on advanced concepts of inheritance and function overriding, crucial elements in object-oriented programming. Key topics covered include polymorphism, virtual functions, abstract classes, and dynamic binding.

Show more Read less









Whoops! We can’t load your doc right now. Try again or contact support.

Document information

Uploaded on
August 5, 2024
Number of pages
5
Written in
2023/2024
Type
Lecture notes
Professor(s)
Nicholas mitchell
Contains
All classes

Subjects

Content preview

CO2402: Advanced Programming
with C++ Lecture 9


Introduction to Inheritance and Function Overriding

1. Review of Inheritance

o Base Class: The original class from which others inherit.

o Derived Class: The class that inherits from the base class.

o Public inheritance allows the derived class to access public
and protected members of the base class.

2. Function Overriding

o Occurs when a derived class defines a function with the same
name and parameters as a function in its base class. This
allows the derived class to provide a specific implementation.

Example:




3. Calling Overridden Functions

, o The version of the function called depends on the type of
the object or pointer. For objects, the derived class's
version is called if the object is of the derived type.

Example:




The base class function can still be called using the scope
resolution operator.




Polymorphism

1. Concept and Importance

o Polymorphism allows objects of different classes to be treated
as objects of a common base class. It enables the invocation
of derived class methods through base class pointers or
references.

Example:




The output is "Message from base class" because the function
is bound at compile time based on the pointer type (CBase*).


2. Virtual Functions

o Virtual functions enable polymorphism by allowing derived
classes to override base class methods. The virtual keyword in
the base class function declaration signals the compiler to use
dynamic binding.




Example:

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
BpoBpo University of Central Lancashire Preston
View profile
Follow You need to be logged in order to follow users or courses
Sold
309
Member since
5 year
Number of followers
250
Documents
78
Last sold
2 months ago

3.7

73 reviews

5
27
4
17
3
17
2
5
1
7

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their exams and reviewed by others who've used these revision notes.

Didn't get what you expected? Choose another document

No problem! You can straightaway pick a different document that better suits what you're after.

Pay as you like, start learning straight away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and smashed it. It really can be that simple.”

Alisha Student

Frequently asked questions