]> git.llucax.com Git - z.facultad/75.42/euler-oo.git/commitdiff
Ya compila todo. Se agregó el método dibujar a Punto.
authorLeandro Lucarella <llucax@gmail.com>
Sat, 20 Sep 2003 19:19:53 +0000 (19:19 +0000)
committerLeandro Lucarella <llucax@gmail.com>
Sat, 20 Sep 2003 19:19:53 +0000 (19:19 +0000)
figura.cpp
figura.h
punto.h

index 95a4323505de9b32b280d25cc245a8ccf29ce1e5..d4a6de30ea370059141316cee49f530724e81a23 100644 (file)
@@ -16,6 +16,8 @@
 
 #include "punto.h"
 #include "figura.h"
 
 #include "punto.h"
 #include "figura.h"
+#include <ostream>
+#include <cstdlib>
 #include <cstring>
 
 Figura::Figura(size_t color, size_t grosor, const Punto& centro,
 #include <cstring>
 
 Figura::Figura(size_t color, size_t grosor, const Punto& centro,
@@ -25,7 +27,10 @@ Figura::Figura(size_t color, size_t grosor, const Punto& centro,
 
 Figura::~Figura(void) {}
 
 
 Figura::~Figura(void) {}
 
-void Figura::dibujar(void) const {
-    // TODO cout << f << endl; // FIXME
+void Figura::dibujar(std::ostream& out) const {
+    out << "color: " << color << ", grosor: " << grosor
+        << ", nombre: " << nombre << ", centro: ";
+    centro.dibujar(out);
+    out << std::endl;
 }
 
 }
 
index 95be569dd696f05040ad9aff1e905be2d65b4ef6..f9ecc730b5dba623f8af46e52b5bc8291788a41a 100644 (file)
--- a/figura.h
+++ b/figura.h
@@ -18,6 +18,8 @@
 #define FIGURA_H
 
 #include "punto.h"
 #define FIGURA_H
 
 #include "punto.h"
+#include <cstdlib>
+#include <ostream>
 
 /**
  * Figura dibujable.
 
 /**
  * Figura dibujable.
@@ -53,7 +55,7 @@ class Figura {
         /**
          * Dibuja.
          */
         /**
          * Dibuja.
          */
-        virtual void dibujar(void) const;
+        virtual void dibujar(std::ostream& out) const;
 
 };
 
 
 };
 
diff --git a/punto.h b/punto.h
index 741f27e4654bbcc084b708f16e164ff68709b2b9..cc9ae6918c0611c1df0e1b61fe7fce098860b238 100644 (file)
--- a/punto.h
+++ b/punto.h
@@ -17,6 +17,8 @@
 #ifndef PUNTO_H
 #define PUNTO_H
 
 #ifndef PUNTO_H
 #define PUNTO_H
 
+#include <ostream>
+
 /// Punto de un plano.
 struct Punto {
     /// Coordenada x.
 /// Punto de un plano.
 struct Punto {
     /// Coordenada x.
@@ -27,6 +29,10 @@ struct Punto {
     Punto(int x, int y): x(x), y(y) {}
     /// Destructor.
     virtual ~Punto(void) {}
     Punto(int x, int y): x(x), y(y) {}
     /// Destructor.
     virtual ~Punto(void) {}
+    /// Dibuja un punto.
+    virtual void dibujar(std::ostream& out) const {
+        out << "(" << x << "," << y << ")" << std::endl;
+    }
 };
 
 #endif // PUNTO_H
 };
 
 #endif // PUNTO_H