Ajout
- Includes - Fonction carnivore - Ajout d'organismes à l'univers
This commit is contained in:
parent
8071e2ade1
commit
4c937b5276
2 changed files with 44 additions and 3 deletions
30
univers.cpp
30
univers.cpp
|
@ -1,3 +1,31 @@
|
|||
#include "univers.hpp"
|
||||
|
||||
Univers::Univers(int m, int n): _m(m), _n(n) { }
|
||||
// -------- Univers --------
|
||||
|
||||
Univers::Univers(int m, int n): _m(m), _n(n), _tour(0) {
|
||||
_plateau = new int[m * n];
|
||||
}
|
||||
|
||||
void Univers::ajoutOrganismes(std::vector<Organisme*> organismes) {
|
||||
uint64_t tailleUnivers = _m * _n;
|
||||
if(organismes.size() > tailleUnivers - tailleUnivers / 4)
|
||||
throw std::domain_error("Trop d'organismes pour l'univers.\n");
|
||||
}
|
||||
|
||||
// -------- Organisme --------
|
||||
|
||||
Organisme::Organisme(void) {
|
||||
|
||||
}
|
||||
|
||||
// -------- Mouton --------
|
||||
|
||||
bool Mouton::carnivore(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// -------- Loup --------
|
||||
|
||||
bool Loup::carnivore(void) {
|
||||
return false;
|
||||
}
|
||||
|
|
17
univers.hpp
17
univers.hpp
|
@ -1,6 +1,11 @@
|
|||
#ifndef _UNIVERS_HPP_
|
||||
#define _UNIVERS_HPP_ 1
|
||||
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
|
||||
class Organisme;
|
||||
|
||||
class Univers {
|
||||
friend class Organisme;
|
||||
|
||||
|
@ -9,6 +14,8 @@ class Univers {
|
|||
|
||||
public:
|
||||
Univers(int, int);
|
||||
|
||||
void ajoutOrganismes(std::vector<Organisme*>);
|
||||
};
|
||||
|
||||
class Organisme {
|
||||
|
@ -19,6 +26,8 @@ class Organisme {
|
|||
class Animal: public Organisme {
|
||||
public:
|
||||
Animal(void);
|
||||
|
||||
virtual bool carnivore(void) = 0;
|
||||
};
|
||||
|
||||
class Herbe: public Organisme {
|
||||
|
@ -35,11 +44,15 @@ class Sel: public Organisme {
|
|||
class Mouton: public Animal {
|
||||
public:
|
||||
Mouton(void);
|
||||
|
||||
bool carnivore(void);
|
||||
};
|
||||
|
||||
class Loups: public Animal {
|
||||
class Loup: public Animal {
|
||||
public:
|
||||
Loups(void);
|
||||
Loup(void);
|
||||
|
||||
bool carnivore(void);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
Reference in a new issue