typestar

Enlaces estructurados en C++

Desempaca pares y entradas de map en variables con nombre — se acabaron .first y .second.

#include <map>
#include <string>
#include <utility>

std::pair<std::string, int> best_seller(
    const std::map<std::string, int> &sales) {
    std::string top;
    int most = -1;
    for (const auto &[name, count] : sales) {
        if (count > most) {
            top = name;
            most = count;
        }
    }
    return {top, most};
}

// unpack the winning pair
auto [name, sold] = best_seller({{"tea", 40}, {"coffee", 55}});

Cómo funciona

  1. const auto &[name, count] divide cada entrada del map mientras el for de rangos recorre las ventas.
  2. La función devuelve un std::pair armado con llaves: {top, most}.
  3. auto [name, sold] desempaca el par devuelto directo en dos nombres nuevos.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
19
Caracteres a escribir
374
Tokens
119
Ritmo de tres estrellas
75 tpm

Al ritmo de tres estrellas de 75 tokens por minuto, este intento toma unos 95 segundos.

Escribe este fragmento

Paso 2 de 3 en Toques modernos; paso 23 de 27 en Fundamentos del lenguaje.

← Anterior Siguiente →