与为什么将函数强制转换为除了返回类型相同的函数类型失败?,我想更全面地了解函数类型和函数签名之间的区别。
例如,在处理函数指针时通常必须考虑函数的类型,函数的类型包括该函数的返回类型。
但是,正如 Mike Seymour 对上述问题的回答中所指出的,函数的签名与函数的类型不同。签名当然用于消除潜在的重载函数之间的歧义(注意函数的返回类型在识别唯一函数中不起作用)。但是,我现在想了解函数签名与函数类型的相关性和重要性。我突然想到,C++ 中函数签名的唯一目的是在重载决议期间识别重载候选者和/或重载集中的唯一函数。
我对么?重载解析是 C++ 中函数签名的唯一目的吗?或者,除了(或仅间接相关)重载解析之外,函数签名还有其他用途/应用吗?
附录为清楚起见,请注意,我特别想了解函数签名的目的和函数类型之间的区别。即,我知道函数类型对于函数指针的使用和编译器/链接器的调用约定实现都是必需的。但是,调用约定仅在重载决议完成后才相关。我在这里特别问,如果函数签名(与type相对)的唯一目的是用于重载解决方案。