Можно ли написать шаблон / макрос c ++, чтобы проверить, имеют ли две функции одинаковые подписи
Можно ли написать шаблон / макрос c ++, чтобы проверить, имеют ли две функции одинаковые подписи (тип возвращаемого значения и список аргументов)?
Вот'Вот простой пример того, как я хочу его использовать:
int foo(const std::string& s) {...}
int bar(const std::string& s) {...}
if (SAME_SIGNATURES(foo, bar))
{
// do something useful... make Qt signal-slot connection for example...
}
else
{
// signatures mismatch.. report a problem or something...
}
Так возможно ли это как-то или это просто несбыточная мечта?
Постскриптум На самом деле я'м интересно в с ++ 2003 стандарт.