Je travaille à rendre une classe d'expression:Comment faire une variable "opérateur"? (C++)
template<typename T, typename U>
class expression
{
public:
expression(T vala, U valb, oper o){val1 = vala; val2 = valb; op = o;}
operator bool{return(val1 op val2);}
private:
T val1;
U val2;
oper op;
};
comme vous pouvez le voir, c'est un peu pseudocode, parce que je besoin d'une classe d'opérateur. Ma pensée originale était de créer un tableau de tous les opérateurs possibles, puis le convertir en une chaîne, mais cela ne fonctionnerait pas en raison du nombre d'opérateurs, et comment le convertir en une chaîne, sauf à travers un tableau bidimensionnel, où n [0] [0] a le premier opérateur, et n [0] [1] a cette chaîne d'opérateurs.
Est-ce que quelqu'un a des suggestions pour ajouter une valeur d'opérateur à ma classe d'expression?
Pourquoi avez-vous utilisé typedef? –
J'ai utilisé typedef pour définir quel est le type 'oper', que l'OP passe comme paameter au constructeur d'expression: Je dis que c'est un pointeur sur une fonction, qui prend deux paramètres et retourne bool. – ChrisW