devxlogo

A Virtual Function in a Base Class

A Virtual Function in a Base Class

If a virtual function in a base class has a default argument that is overridden in the derived class, at run time the value in the base class is always taken. For example:

class Base{    public:            virtual void func(int n = 0);};class Derived{        public:         void func(int n=5);};

In the above code, if the func is overridden.Base* b = new Derived(); b->func();//, it takes o as the default value instead of 5.

devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist