2011-07-26 21 views

Respuesta

5

El contexto y los límites de vista añaden parámetros implícitos. Así que si usted escribe:

def f[T : Manifest](l: List[T])(implicit ord: Ordering[T]) 

Hay, de hecho, dos parámetros implícitos que se pasa en lugar de uno. Permitir este tipo de sintaxis sin duda dará lugar a un poco de confusión en el camino. A medida que el uso de parámetros implícitos comienza a generalizarse, debido a las clases de tipos, es útil poder hacer algo como lo anterior.

+0

"El contexto y los límites de vista añaden parámetros implícitos" >> seguro, lo sé. Estaba bastante interesado, si se produce con alguna dificultad técnica. –

+0

IMO, no poder usar los límites junto con los parámetros implícitos también puede ser muy confuso para un novato :) –

+0

@Vasil No estoy diciendo que sea una mala decisión, solo que agrega un cierto grado de ... confusión . Sería ilegal llamar a la función anterior como 'f (Lista (1 -> 2, 2 -> 1)) (Hacer un pedido por (_.swap))', aunque parece que tiene todas las listas de parámetros llenadas correctamente. –

Cuestiones relacionadas