- Qt 6.11
- Qt Core
- <QOverload>
- Qt 6.11.1 Reference Documentation

# <QOverload>

Functions for resolving overloads. More...

Header: | `#include <QOverload>`

## Functions

auto | qConstOverload(T memberFunctionPointer)
auto | qNonConstOverload(T memberFunctionPointer)
auto | qOverload(T functionPointer)

## Detailed Description

## Function Documentation

### template <typename T> auto qConstOverload(T memberFunctionPointer)

Returns the memberFunctionPointer pointer to a constant member function:

         struct Foo {
             void overloadedFunction(int, const QString &);
             void overloadedFunction(int, const QString &) const;
         };
         auto ptr_1 = qConstOverload<int, const QString &>(&Foo::overloadedFunction);
         auto ptr_2 = qNonConstOverload<int, const QString &>(&Foo::overloadedFunction);

See also qOverload, qNonConstOverload, and Differences between String-Based and Functor-Based Connections.

### template <typename T> auto qNonConstOverload(T memberFunctionPointer)

Returns the memberFunctionPointer pointer to a non-constant member function:

         struct Foo {
             void overloadedFunction(int, const QString &);
             void overloadedFunction(int, const QString &) const;
         };
         auto ptr_1 = qConstOverload<int, const QString &>(&Foo::overloadedFunction);
         auto ptr_2 = qNonConstOverload<int, const QString &>(&Foo::overloadedFunction);

See also qOverload, qConstOverload, and Differences between String-Based and Functor-Based Connections.

### template <typename T> auto qOverload(T functionPointer)

Returns a pointer to an overloaded function. The template parameter is the list of the argument types of the function. functionPointer is the pointer to the (member) function:

     struct Foo {
         void overloadedFunction();
         void overloadedFunction(int, const QString &);
     };
     auto ptr_1 = qOverload<>(&Foo::overloadedFunction);
     auto ptr_2 = qOverload<int, const QString &>(&Foo::overloadedFunction);

If a member function is also const-overloaded qConstOverload and qNonConstOverload need to be used.

See also qConstOverload(), qNonConstOverload(), and Differences between String-Based and Functor-Based Connections.