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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ubhra
5 / 5 / 0
Регистрация: 26.08.2010
Сообщений: 132
Записей в блоге: 1
#1

namespace std - C++

10.10.2013, 09:42. Просмотров 880. Ответов 11
Метки нет (Все метки)

Добрый день.
Вычитал что могу использовать любой namespace.
Но в другом месте написано что если не использовать std, то не сможет определится, например, cout.
Так ли это? И если да, то как определить в каком пространстве какие имена?
Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.10.2013, 09:42     namespace std
Посмотрите здесь:

Using namespace std - C++
В чем отличие, если один cout (или что-то другое) будет в std, а другой stdd, для чего вообще using namespace? Уже везде где только можно...

using namespace std; - C++
Здравствуйте. Я заметил, что многие программисты стараются избегать этой строчки в своих программах. С чем это связанно? И еще...

std:: vs namespace - C++
Тема не для холивара, объясните пожалуйста чем лучше std:: а не using namespace std ? Без namespace std, возникает такая ошибка, но...

using namespace std - C++
Обьясните пожалуйста понятным языком, что такое пространство имен, и зачем нужна эта команда или std::

using namespace std - C++
using namespace std; скажите плиз что означает ета строка и для чего она нужна?

Использование using namespace std; - C++
Я где-то слышал что использование такой диррективы на корню убивает пространство имен, но ведь только в boost и stl есть похожие классы,...

Возникает ошибка с using namespace std; - C++
#include "stdio.h" #include "string.h" #include "math.h" #include "stdlib.h" #include "stdafx.h" #include "iostream.h" using...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13052 / 7315 / 814
Регистрация: 27.09.2012
Сообщений: 18,052
Записей в блоге: 3
Завершенные тесты: 1
10.10.2013, 09:45     namespace std #2
Цитата Сообщение от Ubhra Посмотреть сообщение
И если да, то как определить в каком пространстве какие имена?
Вся стандартная библиотека в std
Для остального смотрите документацию
0x10
2459 / 1631 / 238
Регистрация: 24.11.2012
Сообщений: 4,012
10.10.2013, 09:46     namespace std #3
Цитата Сообщение от Ubhra Посмотреть сообщение
Но в другом месте написано что если не использовать std, то не сможет определится, например, cout.
Цитату из конкретного места. Такая формулировка вообще не имеет смысла.
Если не использовать директиву using namespace, то объект cout доступен с явным указанием пространства имен, т.е. как std::cout.
Цитата Сообщение от Ubhra Посмотреть сообщение
то как определить в каком пространстве какие имена?
Читать либо исходники, либо документацию.
SatanaXIII
Супер-модератор
Эксперт С++
5602 / 2636 / 242
Регистрация: 01.11.2011
Сообщений: 6,495
Завершенные тесты: 1
10.10.2013, 09:58     namespace std #4
Ubhra, вот здесь можно порыться, поискать чего интересного в примерах: using namespace std и std:: надоело смотреть!
Ubhra
5 / 5 / 0
Регистрация: 26.08.2010
Сообщений: 132
Записей в блоге: 1
10.10.2013, 11:02  [ТС]     namespace std #5
Вот цитата:
Существуют стандартные группы имен, такие как std. Именно к такой группе относится имя cout, а также имена множества других объектов, включенных в С++. Если не использовать эту директиву, компилятор может не узнать имя cout и выдать следующее сообщение об ошибке (символ cout не определен):
Undefined symbol 'cout'
Croessmah
10.10.2013, 11:04
  #6

Не по теме:

Цитата Сообщение от Ubhra Посмотреть сообщение
Вот цитата:
Ох ты, Господи! Без using namespace прям жизнь остановилась...

alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
10.10.2013, 11:08     namespace std #7
Цитата Сообщение от Ubhra Посмотреть сообщение
Вот цитата:
Понятно. И в чём вопрос?
Ubhra
5 / 5 / 0
Регистрация: 26.08.2010
Сообщений: 132
Записей в блоге: 1
10.10.2013, 11:15  [ТС]     namespace std #8
Если обобщить, то вот в чем..
Могу ли я использовать это так?

using namespace std;
...код...
cout<<"1";
...код...
my_namespace_1::cout<<"2";
...код...
my_namespace_2::cout<<"3";
...код...
SatanaXIII
Супер-модератор
Эксперт С++
5602 / 2636 / 242
Регистрация: 01.11.2011
Сообщений: 6,495
Завершенные тесты: 1
10.10.2013, 11:21     namespace std #9
Ubhra, вы почитали ссылку, которую я привел?
Зря что ли -=ЮрА=- распинался:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
namespace my
{
    template <class T>
    T cout(T param)
    {
        return param;
    }
}
 
int main()
{
    cout<<"Test\n";
    cout<<my::cout("Test\n");
    system("pause");
    return 0;
}
Ubhra
5 / 5 / 0
Регистрация: 26.08.2010
Сообщений: 132
Записей в блоге: 1
10.10.2013, 11:24  [ТС]     namespace std #10
Прочел по ссылке и как бы уже ни в чем вопросов нет ) Спасибо.
Dmitriy_M
1341 / 1222 / 112
Регистрация: 20.03.2009
Сообщений: 4,392
Записей в блоге: 11
10.10.2013, 12:34     namespace std #11
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Зря что ли -=ЮрА=- распинался:
И зачем плодить пространство имен с глупым названием my, когда можно сделать так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
template <class T>
T cout(T param)
{
     return param;
}
 
int main()
{
    std::cout<<"Test\n";
    std::cout<<cout("Test\n");
    system("pause");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.10.2013, 12:43     namespace std
Еще ссылки по теме:

Что означает using namespace std? - C++
Что означает в с++? using namespace std объясните пожалуйста простым языком))

Функции из заголовочника cstring размещены в namespace std ? - C++
Столкнулся с таким кодом в учебнике Стивена Праты (12 глава, стр. 641-615): // string1.h -- fixed and augmented string class...

На что влияет расположение строчки using namespace std; ? - C++
В учебнике вывод предлагают делать так: 1-ый способ: #include &lt;iostream&gt; int main() { std::cout &lt;&lt; &quot;Hello World!&quot; &lt;&lt;...

#include <list> - конфликт using namespace std с другими инклюдами - C++
Всем привет. Появилась надобность использовать списки, однако #include &lt;list&gt; подключается только вместе с using namespace std. Мои...

Коллеги что же все такие делает "using namespace std"? - C++
Я понял то что &quot;using namespace st&quot; мы вводим для того что бы не писать &quot;std::cout&lt;&lt;&quot; ну а конкретно, деловым...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
SatanaXIII
Супер-модератор
Эксперт С++
5602 / 2636 / 242
Регистрация: 01.11.2011
Сообщений: 6,495
Завершенные тесты: 1
10.10.2013, 12:43     namespace std #12
Для наглядности примера.
Yandex
Объявления
10.10.2013, 12:43     namespace std
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru