premetto che sono un novellino e, quindi qualcuno può spiegarmi a parole povere a cosa serve questa istruzione e la sua sintassi?
premetto che sono un novellino e, quindi qualcuno può spiegarmi a parole povere a cosa serve questa istruzione e la sua sintassi?
tutto si può fare, bisogna solo volerlo
http://italybrain.altervista.org/
Come al solito con gli stream C++ la questione non è semplicissima.
cin.sync() chiama cin.rdbuf()->pubsync(), che a sua volta chiama cin.rdbuf()->sync(); questa in sostanza dovrebbe scartare tutti i caratteri rimasti nel buffer di input.
Il problema è che non è ben definita dallo standard la "politica di gestione" del buffer di input di cin, per cui il comportamento vero e proprio varia considerevolmente da un'implementazione all'altra (o addirittura nella medesima implementazione a seconda dell'aver impostato o meno la sincronizzazione con gli stream C).
Ergo, a priori non serve a molto, un po' come fflush(stdin) in C; nota che invece sync applicato su stream di output ha comportamento ben definito.
Amaro C++, il gusto pieno dell'undefined behavior.
grazie molte!![]()
tutto si può fare, bisogna solo volerlo
http://italybrain.altervista.org/
Amaro C++, il gusto pieno dell'undefined behavior.