Sobrecarga de funciones
No se admite la sobrecarga:
- Cada función tiene una única implementación:
- Siempre se utiliza un número fijo de parámetros.
- Siempre se utiliza un único conjunto de tipos de parámetros.
- No se admiten valores predeterminados:
- Todos los sitios de llamada tienen el mismo número de argumentos.
- A veces, se utilizan macros como alternativa.
Sin embargo, los parámetros de función pueden ser genéricos:
fn pick_one<T>(a: T, b: T) -> T { if std::process::id() % 2 == 0 { a } else { b } } fn main() { println!("coin toss: {}", pick_one("heads", "tails")); println!("cash prize: {}", pick_one(500, 1000)); }
- Cuando se utilizan genéricos, el
Into<T>
de la biblioteca estándar puede proporcionar una especie de polimorfismo limitado en los tipos de argumentos. Veremos más información al respecto en una sección posterior.