Yep β C, :
namespace boost {
template<>
inline std::string lexical_cast(const int& arg)
{
char buffer[65];
ltoa( arg, buffer, 10 );
return std::string( buffer );
}
}
, . ltoa ( ), .
.
, :
template <typename T>
inline std::string fast_lexical_cast(const T& arg)
{
return boost::lexical_cast<std::string>(arg);
}
template <>
inline std::string my_fast_lexical_cast(const int& arg)
{
char buffer[65];
if (!ltoa(arg, buffer, 10)) {
boost::throw_exception(boost::bad_lexical_cast(
typeid(std::string), typeid(int)
));
}
return std::string(buffer);
}
std::string myString = fast_lexical_cast<std::string>(42);
: SO- Kirill, , . - , .