1 /* vim: set et sts=4 sw=4 fdm=marker fmr={,} fdn=1 fo+=t tw=80:
3 * Taller de Programación (75.42).
6 * Ordena texto ASCII o Unicode.
8 * Copyleft 2003 - Leandro Lucarella <llucare@fi.uba.ar>
9 * Puede copiar, modificar y distribuir este programa bajo los términos de
10 * la licencia GPL (http://www.gnu.org/).
12 * Creado: Mon Sep 22 21:00:15 ART 2003
30 /// Caracter ASCII almacenado.
36 Ascii(char c = '0'): caracter(c) {
38 std::cerr << "En constructor de Ascii." << std::endl;
42 /// Constructor de copia.
43 Ascii(const Ascii& ascii): caracter(ascii.caracter) {
45 std::cerr << "En constructor de copia de Ascii." << std::endl;
50 virtual ~Ascii(void) {
52 std::cerr << "En destructor de Ascii." << std::endl;
56 /// Asignación de una instancia a otra.
57 Ascii& operator=(const Ascii& ascii) {
59 std::cerr << "En operator= de Ascii." << std::endl;
61 caracter = ascii.caracter;
65 /// Comparación por menor de dos instancias.
66 bool operator<(const Ascii& ascii) {
68 std::cerr << "En operator< de Ascii." << std::endl;
70 return caracter < ascii.caracter;
73 /// Comparación por igual de dos instancias.
74 bool operator==(const Ascii& ascii) {
76 std::cerr << "En operator== de Ascii." << std::endl;
78 return caracter == ascii.caracter;
81 /// Volcado a un stream de salida.
82 friend std::ostream& operator<<(std::ostream& out, const Ascii& ascii);
84 /// Captura desde un stream de entrada.
85 friend std::istream& operator>>(std::istream& in, const Ascii& ascii);