{}
main.cpp
#include <iostream> struct Distance { double meters; explicit Distance(double m) : meters(m) { } friend std::ostream& operator<<(std::ostream& os, const Distance& d) { return os << d.meters << " meters"; } }; Distance operator"" _km(long double km) { return Distance(static_cast<double>(km * 1000.0L)); } int main() { auto d = 100.0_km; std::cout << d << '\n'; }
Output