C/C++
Почему никто из программистов никогда не пишет using namespace std;? Все пишут например вот так:std::vector<int> v1(10);
Сколько кода уже прочитал никто так не пишет, разве не проще написать using namespace std; в начале кода и не париться с вечным дописыванием?
Если вы пишите проект с нуля и не планируете использование сторонних библиотек, то тогда вам нет необходимости явно указывать пространство имён стандартной библиотеки языка C++. В противном случае вы постоянно будете сталкиваться с конфликтом имён. Кроме всего прочего, вы в любом случае не сможете написать такую стоку кода:
using namespace std;
auto string = string{"abc"};
а так сможете auto string = std::string{"abc"};
По аналогии с реальной жизнью: у нас есть полка в шкафу, на ней разложены предметы. Мы можем за каждым предметом лезть отдельно (прописать std:: перед идентификатором), а можем вынуть из шкафа всю полку и положить её перед собой (прописать using namespace std). Само собой, никто в здравом уме не будет хватать всю полку со всем лежащим на ней хламом, из которого понадобится только 2-3 предмета, но если лень лезть за каждым предметом отдельно, а хлам при этом не мешает, то можно и всю полку взять.
Интересно кто (Ой! А кто это сделал??) добавил эту возможность в язык, если ею программисты не пользуются?
Нахрена сразу кучу вещей сделать предопределенными ? А если вдруг введёшь некую сущность в своей программе, название которой будет иметь смысл в std ?
В мелких программах вполне имеет смысл так делать. Которые такие же мелкие, как и твои учебные. А иногда мы их тоже пишем.
И если эта программка, чтобы что-нибудь потестить - и кроме меня ее никто не увидит - то ссать на мнение сеньоров и прочих ревьюров из нашей компании) пишу как хочу, лишь бы быстрее.
А если не с std, то с чем-нибудь еще так делаем
Может ты просто ищешь именно этот using?))
В крупных проектах обычно полно своих собственных пространств имен, и пространств имен из библиотек, и обязательно во многих местах какие-то из них заюзывают таким образом
Бывают и многократно вложенные, типа
chrome::windows::api::TestCallback
Не писать же везде вот так целиком
Пишут
using namespace chrome::windows::api;
И если эта программка, чтобы что-нибудь потестить - и кроме меня ее никто не увидит - то ссать на мнение сеньоров и прочих ревьюров из нашей компании) пишу как хочу, лишь бы быстрее.
А если не с std, то с чем-нибудь еще так делаем
Может ты просто ищешь именно этот using?))
В крупных проектах обычно полно своих собственных пространств имен, и пространств имен из библиотек, и обязательно во многих местах какие-то из них заюзывают таким образом
Бывают и многократно вложенные, типа
chrome::windows::api::TestCallback
Не писать же везде вот так целиком
Пишут
using namespace chrome::windows::api;
Похожие вопросы
- Что такое #include <iostream>, std using namespace std В языке программирования C++?
- С++ Не работает двумерный вектор (std::vector)
- Как проинициализировать std::vector используя указатель на базовый массив?
- Почему никто не знает, что такое &?
- Объсните пожалуйста значение скобок в int(*ptr)[10] и разницу с int(*ptr)[10]=new int[5][10]. (Подробности в описании)
- Зачем нужно писать int около main(), return 0, void main в c++?
- Программа на С++ с использованием vector
- Программа на C++ с переводом Char в Int и наоборот при переводе возвращает НИЧЕГО
- Различие указателей int *; и char *;
- Язык С++ : есть ли разница между этими двумя операциями? 1) int m = (int)n; 2) int m = int(n).