类型签名

在计算机科学中，类型签名（）或类型注解（）是对程序的函数、方法、子过程、以及变量等给出其类型。特别是对函数给出其输入参数数量、类型与次序及输出结果的类型。 许多编译器产生的内部使用的函数名包含了其类型特征，这称为名字修饰，為链接器辨别不同的函数提供了方便。

类型特征的现代应用：
 面向对象语言使用的interface，实际上是利用了函数类型特征的模板。 
 C++支持的函数重载实际上用不同的类型特征来辨识。 
 多继承要求考虑函数特征，以避免不可预计的结果。  

C/C++
在C和C++中，类型签名通常被声明为函数原型，函数声明也反映了其用法。例如，函数指针使用方法如下：
char c;
double d;
int retVal = (*fPtr)(c, d);

它的签名为：

(int) (char, double);

 Java 
在Java中，方法签名（）由方法的名字（method's name）与参数类型（parameter types）组成。如下例：public double calculateAnswer(double wingSpan, int numberOfEngines,
                              double length, double grossTons) {
    //do the calculation here
}该例的方法签名为：calculateAnswer(double, int, double, double)

参考文献


Category:类型论
Category:计算机编程