W ponizszych przykladach pokazuje ze nie ma znaczenia czy uzyje std:: przed copy czy sort, a i tak przyklad kompiluje sie.
http://ideone.com/VfeOSL
http://ideone.com/C5VDkM
W jakiej przestrzeni nazw sa w koncu te funkcje?
W ponizszych przykladach pokazuje ze nie ma znaczenia czy uzyje std:: przed copy czy sort, a i tak przyklad kompiluje sie.
http://ideone.com/VfeOSL
http://ideone.com/C5VDkM
W jakiej przestrzeni nazw sa w koncu te funkcje?
Są w przestrzeni std
- wygląda na to, że jak raz użyjesz tego std::
, to jest to jakby "zapamiętywane" i gdy następuje odwołanie do jakiegoś następnego symbolu, automatycznie przeszukiwana jest ta przestrzeń nazw std
.
http://ideone.com/ZCPrvN
prog.cpp:8:26: error: ‘sort’ was not declared in this scope
#Edit
z tego co wyczytałem, to nazywa się to ADL :P
To ADL. Działa na funkcji, dlatego kod w linku z powyższego posta się nie kompiluje.
A działa to tak, że gdy kompilator nie znajduje w obecnym scope funkcji o takiej sygnaturze, patrzy na to jakie parametry przekazałeś i przeszukuje dodatkowo namespace'y typów tych argumentów.