Advertisement
fabgonber

Untitled

Oct 19th, 2020
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.87 KB | None | 0 0
  1. /* inicio de main.cpp */
  2. #include <iostream>
  3. #include "vehiculo.h"
  4. #include "auto.h"
  5. #include "camioneta.h"
  6. // #include "equilatero.h"
  7.  
  8. using namespace std;
  9. int main() {
  10.   std::cout << "Hello Vehiculo!\n";
  11.  
  12.   Vehiculo azul;
  13.   azul.setDueno("juan");
  14.  
  15.   Auto verde;
  16.   verde.setDueno("Jose");
  17.   verde.setPuertas(5);
  18.   verde.setRuedas(4);
  19.   verde.caracteristicas();
  20.   verde.subir();
  21.  
  22.   Camioneta roja;
  23.   roja.setDueno("Pedro");
  24.   roja.setPuertas(5);
  25.   roja.setRuedas(4);
  26.   roja.cargar(14.0);
  27.   roja.caracteristicas();
  28.   roja.cargar(3.0);
  29.   roja.caracteristicas();
  30.  
  31.  
  32. //   azul.caracteristicas(); no funciona porque azul no es auto es vehiculo
  33. // verde es auto, por lo tanto es vehiculo
  34.  
  35.  
  36. }
  37.  
  38. /* fin de main.cpp */
  39.  
  40.  
  41. /* inicio de vehiculo.h */
  42. #ifndef VEHICULO_H
  43. #define VEHICULO_H
  44.  
  45. using namespace std;
  46.  
  47. class Vehiculo
  48. {
  49.   public:
  50.     Vehiculo();
  51.     ~Vehiculo();
  52.     void setPuertas(int a);
  53.     void setRuedas(int a);
  54.     void setDueno(string a);
  55.     int getPuertas();
  56.     int getRuedas();
  57.     string getDueno();
  58.     void ejemploFdo(int a); // solo para Fdo, no es parte del ejercicio
  59.  
  60.   protected:
  61.     int puertas;
  62.     int ruedas;
  63.     string dueno;
  64.  
  65.   private:
  66.    
  67. };
  68.  
  69. #endif // VEHICULO_H
  70. /* fin de vehiculo.h */
  71.  
  72. /* inicio de vehiculo.cpp */
  73. #include <iostream>
  74. #include "vehiculo.h"
  75.  
  76. using namespace std;
  77.  
  78. Vehiculo::Vehiculo()
  79. {
  80.   this->puertas = 0;
  81.   this->ruedas = 0;
  82.   this->dueno = "";
  83. }
  84.  
  85. Vehiculo::~Vehiculo()
  86. {
  87.   std::cout << "soy el destructor, ";
  88.   std::cout << "mis att: ";
  89.   std::cout << this->puertas << ", ";
  90.   std::cout << this->ruedas << ", ";
  91.   std::cout << this->dueno << ".\n";
  92. }
  93.  
  94.  
  95. void Vehiculo::setPuertas(int a)
  96. {  this->puertas = a; }
  97.  
  98. void Vehiculo::setRuedas(int a)
  99. { this->ruedas = a; }
  100.  
  101. void Vehiculo::setDueno(string a)
  102. {  this->dueno = a; }
  103.  
  104. void Vehiculo::ejemploFdo(int a)
  105. {
  106.    // ¿cuando se usa this?
  107.    /*
  108.       a es parametro, sin this
  109.       b es variable, sin this
  110.       puertas es atributo, con this
  111.    */
  112.    int b = 0;
  113.    this->puertas = this->puertas + a+b;
  114.  
  115. }
  116.  
  117.  
  118. /* fin de vehiculo.cpp */
  119.  
  120. /* inicio de auto.h */
  121. #ifndef AUTO_H
  122. #define AUTO_H
  123.  
  124. class Auto : public Vehiculo
  125. {
  126.   public:
  127.     void caracteristicas();
  128.     void subir();
  129.     void bajar();
  130.    
  131. };
  132.  
  133. #endif // AUTO_H
  134. /* fin de auto.h */
  135.  
  136. /* inicio de auto.cpp */
  137. #include <iostream>
  138. #include "vehiculo.h"
  139. #include "auto.h"
  140.  
  141. void Auto::caracteristicas()
  142. {
  143.   cout << "soy caracteristicas, ";
  144.   cout << "mis attributos: ";
  145.   cout << this->puertas << ", ";
  146.   cout << this->ruedas << ", ";
  147.   cout << this->dueno << ".\n";
  148.   cout << "fin de caracteristicas\n";
  149. }
  150.  
  151. void Auto::subir()
  152. {
  153.   cout << "Soy  ";
  154.   cout << this->dueno;
  155.   cout << "y me subi al auto\n";
  156. }
  157.  
  158. void Auto::bajar()
  159. {
  160.   cout << "Soy  ";
  161.   cout << this->dueno;
  162.   cout << "y me baje del auto\n";
  163. }
  164.  
  165. /* fin de main.cpp */
  166.  
  167. /* inicio de camioneta.h */
  168. #ifndef CAMIONETA_H
  169. #define CAMIONETA_H
  170.  
  171. class Camioneta : public Vehiculo
  172. {
  173.   public:
  174.     Camioneta();
  175.     void caracteristicas();
  176.     void cargar(float kilos);
  177.     // faltan setters y getters
  178.  
  179.   private:
  180.     float tara;
  181.     float carga;
  182.    
  183. };
  184.  
  185. #endif // CAMIONETA_H
  186. /* fin de camioneta.h */
  187.  
  188. /* inicio de camioneta.cpp */
  189. #include <iostream>
  190. #include "vehiculo.h"
  191. #include "camioneta.h"
  192.  
  193. void Camioneta::caracteristicas()
  194. {
  195.   cout << "=>> soy caracteristicas, ";
  196.   cout << "mis attributos: ";
  197.   cout << "puertas:" << this->puertas << ", ";
  198.   cout << "ruedas:" << this->ruedas << ", ";
  199.   cout << "tara:" << this->tara << ", ";
  200.   cout << "carga:" << this->carga << ", ";
  201.   cout << this->dueno ;
  202.   cout << "  <<= fin de caracteristicas\n";
  203. }
  204.  
  205. Camioneta::Camioneta()
  206. {
  207.   this->carga = 0;
  208.   this->tara = 0;
  209. }
  210.  
  211. void Camioneta::cargar(float kilos)
  212. {
  213.         this->carga = this->carga + kilos;
  214. }
  215.  
  216. /* fin de camioneta.cpp */
  217.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement