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

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

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

namespace std - C++

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

Добрый день.
Вычитал что могу использовать любой namespace.
Но в другом месте написано что если не использовать std, то не сможет определится, например, cout.
Так ли это? И если да, то как определить в каком пространстве какие имена?
Спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12501 / 7063 / 793
Регистрация: 27.09.2012
Сообщений: 17,447
Записей в блоге: 2
Завершенные тесты: 1
10.10.2013, 09:45     namespace std #2
Цитата Сообщение от Ubhra Посмотреть сообщение
И если да, то как определить в каком пространстве какие имена?
Вся стандартная библиотека в std
Для остального смотрите документацию
0x10
2442 / 1614 / 235
Регистрация: 24.11.2012
Сообщений: 3,962
10.10.2013, 09:46     namespace std #3
Цитата Сообщение от Ubhra Посмотреть сообщение
Но в другом месте написано что если не использовать std, то не сможет определится, например, cout.
Цитату из конкретного места. Такая формулировка вообще не имеет смысла.
Если не использовать директиву using namespace, то объект cout доступен с явным указанием пространства имен, т.е. как std::cout.
Цитата Сообщение от Ubhra Посмотреть сообщение
то как определить в каком пространстве какие имена?
Читать либо исходники, либо документацию.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2583 / 235
Регистрация: 01.11.2011
Сообщений: 6,375
Завершенные тесты: 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
5410 / 4806 / 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
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2583 / 235
Регистрация: 01.11.2011
Сообщений: 6,375
Завершенные тесты: 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
1321 / 1202 / 109
Регистрация: 20.03.2009
Сообщений: 4,301
Записей в блоге: 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
Еще ссылки по теме:

std:: vs namespace C++
Что означает using namespace std? C++
C++ Использование using namespace std;
using namespace std C++
Функции из заголовочника cstring размещены в namespace std ? C++

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

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

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