virtual void doSomething(int value);virtual void doSomething(double value);
some_object->doSomething(widget);
virtual void doSomething(QWidget * value);
C++ (Qt)class MyClass {.. virtual void foo( int a ) { fooPrim(a); } virtual void foo( double a ) { fooPrim(a); } virtual void foo( Vector3f a ) { fooPrim(a); } ... template<class T> void fooPrim( const T & a ); ..};