Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Что такое #include <iostream>, std using namespace std В языке программирования C++?

Тимур Рахимов Знаток (472), закрыт 2 года назад
Я не особо понимаю что такое iostream, std, using namespace std
В языке программирования C++

Читаю книгу, но всеравно не очень-то и понятно. Только сегодня начал изучать данный язык программирования. Мой основной язык это python, можете на примере python объяснить что это все значит?

Правильный ли пример?
using namespace std это import random?
using std::cout это аналогично from random import randint() (в этом случае cout)?


Как понять это все?
Лучший ответ
Андрей Высший разум (482190) 2 года назад
#include можно рассматривать как аналог import в Python.
А using namespace - как аналог from ... import * в Python.
Только в Python это одной командой, а в C++ импорт отдельно, а отключение префикса перед именами из модуля отдельно.

Все идентификаторы, определённые в стандартной библиотеке C++, имеют префикс (адресное пространство) std:: (даже если они в разных include). Чтобы не указывать std:: перед каждым таким идентификатором, мы указываем адресное пространство std в операторе using namespace.

N.B. Если в Python мы пишем import math и math.sin(x), то в С++ будет #include <cmath> и std::sin(x). Чтобы в обоих языках писать просто sin(x), в Python надо from math import *, а в C++ добавить отдельной строчкой using namespace std;.

<iostream> - это стандартный ввод / вывод в стиле C++. В Python для использования функций input() и print() не требуется import, а в C++ необходимо явно подключить модуль ввода / вывода.

Есть ещё стандартный ввод / вывод в стиле C - <cstdio> или <stdio.h>.
Тимур РахимовЗнаток (472) 2 года назад
Спасибо! Теперь все понятно!
Остальные ответы
λ Искусственный Интеллект (263439) 2 года назад
включение библиотеки ввода-вывода.
только и всего.
Федор Новиков Искусственный Интеллект (368452) 2 года назад
#include <iostream>
вместо этой строки в текст подставляется содержимое файла iostream из каталога include, смотрите настройки компилятора.
using namespace std
это использование пространства имен std без указания его имени, т.е. std::cout и cout после этого будут обрабатываться одинаково.
Dmitry Оракул (63584) 2 года назад
  1. iostream каталог с заголовочными файлами\заголовочный файл, который(-ые) содержит определения типов.
  2. std - пространство имен
  3. using namespace - использование пространства имен. Т.е при написании using namespace std можно будет использовать описанные в нем типы и функции.

Для второго пункта:
https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D1%81%D1%82%D1%80%D0%B0%D0%BD%D1%81%D1%82%D0%B2%D0%BE_%D0%B8%D0%BC%D1%91%D0%BD_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)

Пример для третьего пункта

Без using namespace std
 std::cout 

С использованием using namespace std
 cout 
Самир Дегтярев Мастер (1859) 1 месяц назад
#include и using namespace std в C++ - это как import и from в Python, std это стандартная библиотека.
Похожие вопросы