Hello,
J'essaie de coder une classe de Meta Agent, alors normalement c'est un Design Pattern, mais j'ai pas trouvé trop de trucs dessus, juste un article...
Alors c'est une classe qui va hériter de deux autres classes (Héritage multiple qui déjà me fait un peu peur :euh: ) Mais pour corser le tout, les classes sont des templates...
1 2 3 4 5 6 7 8 9 10
|
template<typename ModelT, typename BehaviorT>
class Agent : public ModelT, BehaviorT
{
public:
// Constructeur
Agent<typename ModelT, typename BehaviorT>(Vector3 acceleration, Vector3 velocity, Vector3 position)
: ModelT(Vector3 acceleration, Vector3 velocity, Vector3 position)
{
}; |
Alors j'essaie de faire marcher le constructeur, mais ça marche pas trop...
sphere1 = new MySphere(Vector3::ZERO, Vector3(0,0,400), Vector3::ZERO); // Par défaut tous les vecteurs sont nuls.
Ca ça marche 
agent1 = new Agent<MySphere,Circle>(Vector3::ZERO, Vector3(0,0,400), Vector3::ZERO)
Mais pas ça .... o_O (La struct Circle existe)
Des idées ?
Partager