■iostreamによる入出力
#include <iostream> using namespace std; class Rational { friend ostream& operator<<(ostream& s, const Rational& r); friend istream& operator>>(istream& s, Rational& r); void setn( int numerator ) { n = numerator; } void setd( int denominator ) { d = denominator; } public: int n, d; Rational( int numerator = 0, int denominator = 1); }; Rational::Rational( int numerator, int denominator) { n = numerator; d = denominator; } ostream& operator<<(ostream& s, const Rational& r) { s << r.n << '/' << r.d; return s; } istream& operator>>(istream& s, Rational& r) { s >> r.n >> r.d; return s; } int main() { int i = 10; Rational r; cin >> i >> r; cout << "整数: " << i << endl << "有利数: " << r << endl; return 0; } |
クラスのオブジェクトを入出力される場合はoperator<<、operator>>をサポートしている必要がある。