@MacFlays: to jest argument za pisaniem std::cout.
Natomiast tutaj jest ::std::cout ( ͡° ͜ʖ ͡°) ta już pedantyczność² wynika z faktu że można std zasłonić szczególnie gdy jesteś w innym namespace np w jakimś gta5:: może być gta5::std:: i wtedy nawet std::string nie oznacza Tego std::string opisanego w standardzie, tylko ten z namespace gta5.
W praktyce, w plikach .h własnych to proponuję mieć konwencję swoją co
@rfree: Nie no, umówmy się, że to są biblioteki w których właśnie chodzi o to, aby były zamiennikiem std i z taką myślą są tworzone. To trochę inna sprawa.
@rfree: @byloaledobre: Najpierw trzebaby było się zastanowić czy istnieje w ogóle jakakolwiek biblioteka która mogłaby przesłonić nazwy z std. Bo nie sądzę, żeby ktoś się porywał na taki z-----y pomysł.
@Flypho: aha to miałeś na myśli. No tak, nikt nie będzie dawał namespace std { - chyba że na zasadzie
namespace std { namespace __debug { - tak to zrobiło g++ :)
Natomiast, tworzenie nazw które mogą kolidować z std, naz jak "vector" czy "map" się spokojnie może zdarzyć i jest to bardzo nieprofesjonalne aby wciągać std, a tym bardziej całe namespace std do swoich nagłówków a już całkowicie aby
Natomiast tutaj jest ::std::cout ( ͡° ͜ʖ ͡°) ta już pedantyczność² wynika z faktu że można std zasłonić szczególnie gdy jesteś w innym namespace np w jakimś gta5:: może być gta5::std:: i wtedy nawet std::string nie oznacza Tego std::string opisanego w standardzie, tylko ten z namespace gta5.
W praktyce, w plikach .h własnych to proponuję mieć konwencję swoją co
printf ("%d\n", x);Jakoś te strumienie << i >> nigdy do mnie nie przemawiały :P
@MacFlays: ᕦ(òóˇ
To trochę inna sprawa.
@Flypho: Nawet w tej sytuacji (albo tym bardziej) może być tak iż musisz używać dokładnych nazw.
Na przykład Adam pisał bibliotekę do animacji 3D, napisał ją
Najpierw trzebaby było się zastanowić czy istnieje w ogóle jakakolwiek biblioteka która mogłaby przesłonić nazwy z std. Bo nie sądzę, żeby ktoś się porywał na taki z-----y pomysł.
namespace std { namespace __debug { - tak to zrobiło g++ :)
Natomiast, tworzenie nazw które mogą kolidować z std, naz jak "vector" czy "map" się spokojnie może zdarzyć i jest to bardzo nieprofesjonalne aby wciągać std, a tym bardziej całe namespace std do swoich nagłówków a już całkowicie aby
- std
- boost
- just_thread http://www.stdthread.co.uk/
gdybyś miał kod zlepiony z kawałków pisanych przez lata pod C03, potem C03 + boost, potem C++11, to używając "using namespace" samo "thread" było