Por que a omissão de "#include <string>" apenas algumas vezes causa falhas na compilação?

Sou iniciante em C ++. Quando escrevo o código, às vezes escrevo#include <string> e o código funciona, outras vezes não escrevo#include <string> e o código não funciona. Mas às vezes funciona sem#include <string>.

Então eu tenho que escrever#include <string> para que o código funcione?

questionAnswers(10)

yourAnswerToTheQuestion