有没有办法检查两个函数是否具有相同的签名?例如:
int funA (int a, int b);
int funB (int a, int b);
float funC (int a, int b);
int funD (float a, int b);
在此示例中,funA
和 funB
是唯一应返回 true
的函数组合。
最佳答案
本质上你想检查两个函数的类型是否相同:
std::is_same_v<decltype(funA), decltype(funB)>
我不会将此称为“比较签名”,因为如果我没记错的话,返回类型不是签名的一部分(因为它不会影响重载解析)。
关于c++ - 如何比较两个函数的签名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59102359/