C ++ zamieszanie strumienie: istreambuf_iterator vs istream_iterator?

Jaka jest różnica pomiędzyistreambuf_iterator iistream_iterator? A ogólnie jaka jest różnica między strumieniami a strumieniami? Naprawdę nie mogę znaleźć żadnego jasnego wyjaśnienia tego, więc postanowiłem zapytać tutaj.