Signatura (informática)
# Signatura (informática)

La signatura o firma de un método o una función define su entrada y su salida. Incluye por lo menos el nombre de la función o método y el número de sus parámetros. En algunos lenguajes de programación, puede incluir el tipo que devuelve la función o el tipo de sus parámetros.
En el caso de un tipo de dato abstracto (TDA), se define signatura como los tipos que utiliza junto con los nombres y perfiles de las operaciones.
Por ejemplo, para especificar el TDA de los booleanos se utiliza la siguiente signatura:
* tipos bool
* operaciones
* verdadero : bool
* falso : bool
* And : bool x bool -> bool
* Or : bool x bool -> bool
* Not : bool -> bool
2 using namespace std; 3 void imprimirCombinacion(int salida, int longitud) { 4 for (int i=0; i<longitud; i++) { 5 cout << salida[i] << " "; 6 } 7 cout << endl; 8 return; 9 } 10 11 void imprimirCombinaciones(int i, int n, int salida, int longitud) { 12 if (n==0) { 13 imprimirCombinacion(salida, longitud); 14 return; 15 } 16 for(int j=i; j<=n; j++) { 17 salida[longitud] = j; 18 imprimirCombinaciones(j, n-j, salida, longitud +1); 19 } 20 } 21 22 int main { 23 int n = 5; 24 25 int salida[100]; 26 imprimirCombinaciones(1, n, salida, 0); 27 28 // recursion de todas las combinaciones de numeros desde el 1 al n que suman `n` 29 30 31 return 0; 32