Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

На что влияет расположение строчки using namespace std; ? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дан текстовый файл. Найти самое короткое слово. http://www.cyberforum.ru/cpp-beginners/thread537509.html
Дан текстовый файл. Найти самое короткое слово. Слово нужно прочитать из файла , а сама программа через массив. Заранее спасибо!
C++ Как правильно открывать файл и записывать/читать из него Как правильно открывать файл и записывать/читать из него? На разных сайтах и учебниках есть различные примеры етого но везде разные одни открывают через fopen() другие пишут ofstream out;... http://www.cyberforum.ru/cpp-beginners/thread537497.html
C++ Не компилируется с OpenSSL
День добрый. Начал осваивать библиотеку OpenSSL, пишу теста ради следующий код : #include <openssl/ssl.h> int main() { SSL_CTX *a = new SSL_CTX; SSL *ssl; ssl = SLL_new(a);
C++ Дан текстовый файл. Заменить в нем все подряд идущие пробелы на один пробел.
Помогите новечку! Дан текстовый файл. Заменить в нем все подряд идущие пробелы на один пробел. Если можно в более простом варианте. Заранее спасибо!
C++ Отображение картинки в консоли http://www.cyberforum.ru/cpp-beginners/thread537457.html
Всем Доброго времени суток. Видел что как то в консоль подгружают изображение - ну тоесть вместо черного фона отображается именно картинка... как это можно реализовать?
C++ Поменять местами максимальный и предпоследний элементы в массиве Поменять местами максимальный и предпоследний элементы в массиве W (12). Вывести исходный и переработан массивы... подробнее

Показать сообщение отдельно
Alex Z
27 / 1 / 0
Регистрация: 29.06.2011
Сообщений: 136

На что влияет расположение строчки using namespace std; ? - C++

03.04.2012, 12:44. Просмотров 1397. Ответов 2
Метки (Все метки)

В учебнике вывод предлагают делать так:
1-ый способ:
C++
1
2
3
4
5
6
7
#include <iostream>
int main()
{
   std::cout << "Hello World!" << std::endl;
 
   return 0;
}
2-ой способ:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
int main()
{
   using std::cout;
   using std::endl;
 
   cout << "Hello World!" << endl;
 
   return 0;
}
3-ий способ:
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
int main()
{
   using namespace std;
 
   cout << "Hello World!" << endl;
 
   return 0;
}
Вот так. И примеры приведены с использованием одного из трёх способов. Но вот встретился пример в книге, где написано так:
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
using namespace std;
int main()
{
   // код
   cout << "Что-то вывести" << endl;
 
   return 0;
}
То есть строчка:
C++
1
using namespace std;
вынесена из функции main. Вообще всё работает. Но просто я знаю, что если например переменную объявлять внутри функции, то она будет локальная, а снаружи - глобальная. То есть разница есть, куда засунуть строчку:
C++
1
int x=6;
Тут поди тоже есть разница, но автор учебника ничего не пишет (или мне не по шарам). Собственно, в этом и вопрос:
1) На что влияет расположение строчки using namespace std; (внутри main или снаружи)?

И ещё один вопрос задам здесь же, так как он на ту же тему. Вот возьмём любой способ вывода, например этот:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
int main()
{
   using std::cout;
   using std::endl;
 
   cout << "Hello World!" << endl;
 
   return 0;
}
А если я вместо этого напишу так:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
int main()
{
   using std::cout;
   using std::endl;
 
   std::cout << "Hello World!" << std::endl;
 
   return 0;
}
то компилятор ошибку не выдаёт и всё работает.
2) То есть я так понял, если я указал, из какого пространства имён cout и endl вначале, а потом опять в явном виде это указываю перед каждым использованием, то это вроде как не ошибка? Просто лишняя писанина?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru