J'essaie d'écrire une fonction qui détectera quand je suis presque à la fin d'un flux de chaînes, mais cela ne semble pas fonctionner.
Voici du code:
std::string path(1.2.3);
int number;
std::stringstream ss(path);
while (!ss.eof()) {
if (ss.peek() != '.') {
ss >> number;
if (ss.tellg() == path.length()) {
std::cout << "Last one: " << number;
} else {
std::cout << number;
}
} else { ss.get(); }
}
J'ai essayé d'utiliser ss.tellg () == path.length (), mais cela ne fonctionne pas. Quelqu'un a-t-il une alternative?
Je l'ai compris ..
std::string path(1.2.3);
int number;
std::stringstream ss(path);
while (!ss.eof()) {
if (ss.peek() != '.') {
ss >> number;
if (ss.tellg() == -1) {
std::cout << "Last one: " << number;
} else {
std::cout << number;
}
} else { ss.get(); }
}