#include <locale>
struct myFacet : public std::numpunct<char>
{
char do_decimal_point() const {return ',';}
};
#include <iostream>
#include <sstream>
#include <iterator>
int main()
{
std::istringstream stream("3,451");
stream.imbue(std::locale(std::locale(), new myFacet));
std::cout << *std::istream_iterator<float>(stream);
}
I2luY2x1ZGUgPGxvY2FsZT4KCnN0cnVjdCBteUZhY2V0IDogcHVibGljIHN0ZDo6bnVtcHVuY3Q8Y2hhcj4KewogICAgICAgIGNoYXIgZG9fZGVjaW1hbF9wb2ludCgpIGNvbnN0IHtyZXR1cm4gJywnO30KfTsKCiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPHNzdHJlYW0+CiNpbmNsdWRlIDxpdGVyYXRvcj4KCmludCBtYWluKCkKewogICAgICAgIHN0ZDo6aXN0cmluZ3N0cmVhbSBzdHJlYW0oIjMsNDUxIik7CgogICAgICAgIHN0cmVhbS5pbWJ1ZShzdGQ6OmxvY2FsZShzdGQ6OmxvY2FsZSgpLCBuZXcgbXlGYWNldCkpOwoKICAgICAgICBzdGQ6OmNvdXQgPDwgKnN0ZDo6aXN0cmVhbV9pdGVyYXRvcjxmbG9hdD4oc3RyZWFtKTsKfQ==