Argumentos por defecto en C++
Los parámetros finales tienen valores de fallback: un solo join sirve para tres formas de llamada.
#include <string>
// Defaults fill in from the right; callers pass only what differs.
std::string join(const std::string& a, const std::string& b,
const std::string& sep = ", ", bool trailing = false) {
std::string out = a + sep + b;
return trailing ? out + sep : out;
}
std::string join_demo() {
return join("salt", "pepper") + join("x", "y", " | ") +
join("a", "b", ";", true);
}
Cómo funciona
sepvale", "por defecto ytrailingfalse; los defaults deben ir al final de la lista.- El cuerpo concatena con
sepy el ternario agrega un separador más cuandotrailingestá activo. - Las tres llamadas pasan dos, tres y cuatro argumentos; los que faltan se llenan desde la derecha.
Palabras clave y builtins usados aquí
boolconstfalsereturntrue
El intento, en números
- Líneas
- 13
- Caracteres a escribir
- 383
- Tokens
- 119
- Ritmo de tres estrellas
- 80 tpm
Al ritmo de tres estrellas de 80 tokens por minuto, este intento toma unos 89 segundos.
Paso 3 de 3 en Funciones y lambdas; paso 12 de 27 en Fundamentos del lenguaje.