|
Boost Users : |
Subject: Re: [Boost-users] [lexical_cast] How is the degenerate case handled?
From: jbosboom_at_[hidden]
Date: 2009-04-20 14:14:07
> This is not a common usecase and I see only one practical use of it.
A user might want to write a template that uses lexical_cast without
having to pay the performance cost when the cast isn't necessary.
Specializing lexical_cast for this case would save the user from having to
specialize his own template.
I'm guessing
template<typename Target>
Target lexical_cast(const Target& arg) {
return arg;
}
doesn't work because the compiler can't decide between lexical_cast<Foo>
and lexical_cast<Foo, Foo> for lexical_cast<Foo>(some_foo). Could
something like
template<typename T>
T lexical_cast<T, T>(const Target& arg)
work? (My syntax might not be perfect; it's been a while since I've done
partial specialization.)
--Jeffrey Bosboom
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