Maison > développement back-end > C++ > Quelle est la manière la plus élégante d'imploser un vecteur de chaînes ?

Quelle est la manière la plus élégante d'imploser un vecteur de chaînes ?

Linda Hamilton
Libérer: 2024-10-24 08:12:02
original
515 Les gens l'ont consulté

What is the Most Elegant Way to Implode a Vector of Strings?

Imploser un vecteur de chaînes avec élégance

Cette question cherche à identifier l'approche la plus sophistiquée pour imploser un vecteur de chaînes en une seule chaîne. La méthode actuellement implémentée est la suivante :

<code class="cpp">static std::string&amp; implode(const std::vector<std::string>&amp; elems, char delim, std::string&amp; s)
{
    for (std::vector<std::string>::const_iterator ii = elems.begin(); ii != elems.end(); ++ii)
    {
        s += (*ii);
        if ( ii + 1 != elems.end() ) {
            s += delim;
        }
    }

    return s;
}

static std::string implode(const std::vector<std::string>&amp; elems, char delim)
{
    std::string s;
    return implode(elems, delim, s);
}</code>
Copier après la connexion

Utilisation de boost::algorithm::join

La réponse suggère d'exploiter la fonction de jointure de la bibliothèque boost :

<code class="cpp">#include <boost/algorithm/string/join.hpp>
...
std::string joinedString = boost::algorithm::join(elems, delim);</code>
Copier après la connexion

Cette méthode offre une approche plus concise et efficace de l'implosion des cordes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal