another simple way without the use of macros
std::string stringize(double d, unsigned int p=3 )
{
std::stringstream ss;
ss << std::setprecision(p) << d;
return ss.str();
}
double default_value = 2.5;
value(&config.my_double)->default_value(default_value, stringize(default_value));