O'Reilly logo

Navigating C++ and Object-Oriented Design by Gail Anderson, Paul Anderson

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

6.2. Function Overloading

To overload functions, provide unique signatures and different implementations for functions with the same name. Signatures are important because the compiler does not use a function's return type for overloading. Here are the formats.

					Type f(signature1);              // global function, program scope 
static Type f(signature2);       // static function, file scope

class Class_name {
 . . .
   Class_name(signature3);       // constructor
   Class_name(signature4);       // constructor, different signature
   Type f(signature5);           // member function
   static Type f(signature6);    // static member function
 . . .
};

You may overload any function except class destructors. Since scope rules apply to functions and their signatures (including const and volatile), overloading ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required