next up previous
Next: Razred Up: Vaje 15 Previous: Shema ocenjevanja 1. domače naloge

Na primeru SKLAD si oglejmo kaj več o polimorfizmu

Na danem primeru si lahko ogledate kako izgleda objektno programiranje proti polimorfizmu.

Definicijski modul najdemo na področju

displaymath86

#include "../../code/bool/bool.h"

#define max_Sklad 100

class Sklad {                 //Sklad-ime razreda

private:                      //zasebno
        int skladisce [max_sklad];
        int zadnji;

public:
  Sklad();                    //KONSTRUKTOR
        /*Desc: Ustvari prazen sklad.
          Parms: /
          Result: Sklad
          Pre: /
          Post: SKL_Prazen()
        */

  ~Sklad();                   //DESTRUKTOR
        /*Desc: Unici sklad.
          Parms: /
          Result: /
          Pre: Sklad je bil ustvarjen
          Post: Sklad ne moremo vec uporabiti.
        */

  void Nalozi( int element );
        /*Desc: Element nalozi na sklad..
          Parms: element-element, ki ga nalozimo na sklad
          Result: /
          Pre: not(SKL_Poln())
          Post: Sklad´= [element|Sklad]
        */

  int Zlozi();
        /*Desc: Zlozi element s sklada.
          Parms: /
          Result: element
          Pre: (not (SKL_Prazen()) && (Sklad = [element|ostalo])
          Post: Sklad´ = ostalo
        */

  bool Prazen();
        /*Desc: Preveri, ali je sklad prazen.
          Parms: /
          Result: { if Sklad = [] then TRUE else FALSE }
          Pre: Sklad  ustvarjen
          Post: /
        */

  bool Poln();
        /*Desc: Preveri, ali je sklad poln.
          Parms: /
          Result: b if Sklad.zadnji < max_Sklad then FALSE else TRUE }
          Pre: Sklad je bil ustvarjen.
          Post: /
        */

  int Vrh();
        /*Desc: Vrne vrhni element Sklada.
          Parms: /
          Result: vrh
          Pre: not(Prazen()) && [vrh|_]
          Post: /
        */

}  //Sklad



Andrej Brodnik (Andy)
Tue Mar 24 14:27:14 MET 1998