Merkkijono pitää varsin usein muuttaa reaaliluvuksi tai kokonaisluvuksi. Siksi kirjoitammekin tiedostoon mjonotpp.h kaksi funktiota luvuksi:
inline bool luvuksi(vstring &jono, double &d, double def=0.0) { d = def; return std::sscanf(jono.c_str(),"%lf",&d) == 1; } inline bool luvuksi(vstring &jono, int &i, int def=0) { i = def; return std::sscanf(jono.c_str(),"%d",&i) == 1; }
Funktion avulla voimme kirjoittaa muunnoksen lyhyemmin ja tuvallisemmin, sillä C++:n funktion kuormitus pitää huolen siitä että luvun tyypin mukaan valitaan oikea funktio käytettäväksi:
luvuksi(pala2,hinta);