C++ (Qt)bool TryConvert2Double( const Variant & v, double * result = 0 ){ if (v.is_type<int>()) { if (result) *result = v.get<int> (); return true; } if (v.is_type<double>()) { if (result) *result = v.get<double> (); return true; } if (v.is_type<std::string>()) return TryStr2Double(v.get <std::string> (), &result); return false;}
C++ (Qt)list.sort([&](variant_t v1, variant_t v2)->bool { try { return my_visitor(v1) > my_visitor(v2); } catch (...) { return false; } });
C++ (Qt)list.sort([&](variant_t v1, variant_t v2)->bool
C++ (Qt)if (v.IsNumeric()) // реально ли это без перебора? double d = v.GetVal <double> ();