2017-07-31 8 views
-6

Je n'ai jamais utilisé stringstream auparavant et j'ai reçu un exemple de code mais sans aucune explication de ce qui se passait dans le code. Si quelqu'un pouvait expliquer le but de chaque ligne, ce serait génial. J'ai regardé dans plusieurs endroits mais je n'arrive pas à trouver la deuxième ligne.Présentation de stringstream

#include <sstream> // i know this line includes the file 

stringstream ss(aStringVariable);// this line in particular 

ss >> aVariable; 

getline(ss, stringVariable2HoldValue, ‘|’); 

Répondre

1

Il y a un constructeur pour std::stringstream qui prend un std::string comme paramètre et initialise le flux avec cette valeur.

#include <iostream> 
#include <sstream> 
#include <string> 

int main() { 

    std::stringstream ss("foo bar"); 

    std::string str1, str2; 
    ss >> str1 >> str2; 

    std::cout << "str1: " << str1 << std::endl; 
    std::cout << "str2: " << str2 << std::endl; 

} 

Ce code initialise un stringstream, ss, avec la valeur "foo bar" et lit alors en deux chaînes, str1 et str2, de la même manière dont vous lire un fichier ou std::cin.