$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-09-28 01:37:37
Gennadiy Rozental wrote:
>> I've taken Richard Johnson's glob_iterator that he posted to the list
>> back in January and re-written it completely, using Boost.Spirit to
>> transform the input 'glob' into an equivalent regex. The result is a
>> 'boost::glob' function that I believe is fully POSIX-conformant.
>>
>> Example usage:
>>
>> fs::path const starting_directory(".");
>> std::list<fs::path> const matches =
>> boost::glob("../te?t/foo*bar", starting_directory);
>
> This look way too inefficient. Why would you want to copy list of complex
> objects?
Maybe, we can just decide that all reasonable compilers support NRVO, and
stop worring about returning vectors/list by value? At least, when I write
function which returns a vector, I start it with
vector<...> result;
so NRVO would surely work. The primary reason for 'result' is that I like
all functions to have a single return, but as a side effect it make NRVO
always working.
- Volodya