CPP/Classes/Conversion Function
From ProgrammingExamples
< CPP
#include <iostream> #include <climits> #include <sstream> #include <string> using namespace std; template<typename R, typename T> R to(const T& in){ stringstream ss; ss << in; R r = R(); ss >> r; return r; } class Int{ private: int var; public: Int(int i = 0): var(i){}; int value(){ return var; } void value(int i){ var = i; } //conversion operator operator string(){ return to<string>(var); } }; int main(){ Int num = 10; string strNum = num; //use the conversion operator cout << num.value() << endl; cout << strNum + ".456" << endl; }