¿Por qué necesito escribir “std :: string” pero no “std :: getline ()”?

Considera este bit de código:

#include <iostream>                                                   
#include <string>

int main()
{
  std::string str;
  std::cout << "Enter a string: \n";
  getline(std::cin, str);
}

¿Por qué debo usarstd:: parastring, cin ycout, pero nogetline()? Esgetline() no en la biblioteca estándar? En realidad estoy un poco confundido por qué no puedo simplemente escribirusing namespace std; y no tener que#include cualquier cosa en la biblioteca estándar, también. ¡Gracias por adelantado!

Respuestas a la pregunta(1)

Su respuesta a la pregunta