Boost logo

Boost Users :

Subject: Re: [Boost-users] namespace question
From: Rhys Ulerich (rhys.ulerich_at_[hidden])
Date: 2010-12-12 12:46:02


> Sorry if this is a basic c++ misunderstanding on my part, but why does this
> compile, since there is no using in this code and to_iso_string is in namespace
> boost::gregorian?
>
> #include <boost/date_time/gregorian/formatters.hpp>
> #include <iostream>
>
> int main(int argc, char** argv) {
> boost::gregorian::date d(2010, 1, 1);
> std::cout << to_iso_string(d) << std::endl;
> std::cout << to_iso_extended_string(d) << std::endl;
> std::cout << to_simple_string(d) << std::endl;
> return 0;
> }

I could be wrong, but I believe it is because of Koenig lookup:
http://en.wikipedia.org/wiki/Argument-dependent_name_lookup

- Rhys


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net