-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfactoryConstante.cpp
More file actions
42 lines (39 loc) · 1.43 KB
/
factoryConstante.cpp
File metadata and controls
42 lines (39 loc) · 1.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*!
* \file factoryConstante.cpp
* \author Jia Han & Antoine Hars
* \brief Déclaration des méthodes de la classe FactoryConstante.
* Ce fichier contient la déclaration des méthodes de la classe FactoryConstante.
*/
/* UV: LO21 - projet
* Sujet: Calculatrice à notation polonaise inversée
* Auteurs: Han Jia & Antoine Hars
* File: factoryConstante.cpp
*/
#include "factoryConstante.h"
#include "entier.h"
#include "reel.h"
#include "rationnel.h"
#include "complexe.h"
#include "expression.h"
/*!
* \brief Méthode de FactoryConstante pour la création des objets de constante en fonction du type recherché.
* Constructeur de la classe MainWindow.
* \param type
* \param item1 Le contenu de l'entier à créer ou du numérateur du rationnel à créer.
* \param item2 Le contenu du dénominateur du rationnel à créer.
* \param item3 Le contenu du réel à créer.
* \param item4 La partie réelle du complexe à créer.
* \param item5 La partie imaginaire du complexe à créer.
* \return un objet d'une classe fille de Constante.
*/
Constante * FactoryConstante::creeConstante(QString type, int item1, int item2, float item3, Constante * item4, Constante * item5)
{
if (type == "entier")
return new Entier(item1);
if (type == "reel")
return new Reel(item3);
if (type == "rationnel")
return new Rationnel(item1, item2);
if (type == "complexe")
return new Complexe(item4, item5);
}