Giter Club home page Giter Club logo

lab01-inheritance's Introduction

Lab01 - Herencia

El siguiente código en C++ corre perfectamente, sin embargo tiene varios puntos que tienen que mejorar siguiendo los principos de la herencia de clases, accesos, sobre-escritura, funciones virtuales y destructores.

#include <iostream>  // allows program to output data to the screen

struct Base {
    virtual void do_something() {}
};

struct Derived1 : Base {
    virtual void do_semothing() {
        std::cout << "Derived1!!!" << std::endl;
    }
};

struct Derived2 : Base {
    virtual void do_semothing() {
        std::cout << "Derived2!!!" << std::endl;
    }
};

// function main begins program execution
int main(int argc, const char *argv[]) {
    std::cout << "Welcome to the UNA!" << std::endl;

    Derived1 derived1;
    derived1.do_semothing();

    Derived2 derived2;
    derived2.do_semothing();

}  // end function main

Instrucciones:

  • Corregir los errores del código anterior
  • Convertir este proyecto siguiendo la estructura de CMake utilizando un folder de src para ubicar las clases del proyecto
  • Convertir los structs a clases de C++ siguiendo el estandar de definición (.h) e implementación (.cpp)
    • Recordemos que las clases minimo debe de tener: Constructores, destructores, propiedades, métodos get/set, y toString()
  • Correr el ejercicio y subirlo a GitHub

lab01-inheritance's People

Contributors

mikeguzman avatar

Watchers

 avatar

Forkers

23kathi

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.