Что делает "#include <iostream>"?

Когда я начал изучать базовый С++, я всегда использовал заголовки

#include <iostream>
using namespace std;

Я хочу задать вопрос, что такое точка iostream. Требуется ли это каждый раз в качестве заголовка?

Ответ 1

Чтобы читать или записывать стандартные потоки ввода/вывода, вам необходимо включить его.

int main( int argc, char * argv[] )
{
    std::cout << "Hello World!" << std::endl;
    return 0;
}

Эта программа не будет компилироваться, если вы не добавите #include <iostream>

Вторая строка не нужна

using namespace std;

Что это значит, говорит компилятору, что имена символов, определенные в пространстве имен std, должны быть внесены в вашу область программы, поэтому вы можете опустить квалификатор пространства имен и написать, например,

#include <iostream>
using namespace std;
int main( int argc, char * argv[] )
{
    cout << "Hello World!" << endl;
    return 0;
}

Обратите внимание, что вам больше не нужно ссылаться на выходной поток с полным именем std::cout и использовать более короткое имя cout.

Мне лично не нравится вводить все символы в пространстве имен заголовочного файла... Я буду индивидуально выбирать символы, которые я хочу быть короче... поэтому я бы сделал это:

#include <iostream>
using std::cout;
using std::endl;

int main( int argc, char * argv[] )
{
    cout << "Hello World!" << endl;
    return 0;
}

Но это вопрос личных предпочтений.