Comment travailler avec des tampons temporaires en C ++

Tampons temporaires sont utiles pour toutes sortes de tâches. Normalement, vous les utilisez lorsque vous souhaitez conserver les données originales, mais vous avez besoin de manipuler les données d'une certaine façon. Par exemple, la création d'une version triée de vos données est une parfaite utilisation d'un tampon temporaire. La TemporaryBuffer exemple montre comment utiliser un tampon temporaire pour trier des chaînes.

#comprendre #comprendre #comprendre #comprendre using namespace std-int main () {vecteur Words-Words.push_back("Blue")-Words.push_back("Green")-Words.push_back("Teal")-Words.push_back("Brick")-Words.push_back("Purple")-Words.push_back("Brown")-Words.push_back("LightGray")-int Count = Words.size () - cout lt; lt; «Les mots contient:" lt; lt; Compter lt; lt; «Éléments». lt; lt; endl - // Création du tampon et copier les données it.pair Mem = get_temporary_buffer(Comte) -uninitialized_copy (Words.begin (), Words.end (), Mem.first) - // effectuer un tri et afficher le results.sort (Mem.first, Mem.first + Mem.second) -pour ( int i = 0- i lt; Mem.second- i ++) cout lt; lt; Mem.first [i] lt; lt; endl-retour 0-}



L'exemple commence par la liste désormais familier des noms de couleurs. Il compte alors le nombre d'entrées dans vecteur et affiche l'écran de comptage.

À ce stade, le code crée le tampon temporaire à l'aide get_temporary_buffer. La sortie est paire, avec la première valeur contenant un pointeur vers les valeurs de chaîne et la seconde valeur contenant le nombre d'éléments de données. Mem ne contient rien - vous avez tout simplement la mémoire allouée.

La tâche suivante consiste à copier les données de vecteur (Mots) à paire (Mem) aide uninitialized_copy. Maintenant que Mem contient une copie de vos données, vous pouvez les organiser en utilisant la fonction de tri. La dernière étape consiste à afficher le Mem contenu à l'écran. Voici ce que vous verrez:

Mots contient: 7 elements.BlueBrickBrownGreenLightGrayPurpleTeal

» » » » Comment travailler avec des tampons temporaires en C ++