Si supponga che ho un'interfacciaautomatico classe proxy
class I{
public:
virtual void f(int id)=0;
virtual void g(int id, float x)=0;
}
Ho bisogno di una classe proxy, a fare una sorta di id per la mappatura puntatore
class Proxy : I
{
I * i[5];
public:
void f(int id)
{
i[id]->f(id);
}
void g(int id, float x)
{
i[id]->g(id, x);
}
}
Così, quando scrivo
Proxy *p;
p->f(1);
f viene richiamato sull'oggetto con id = 1
ci sono molti di questi casi e le interfacce sono piuttosto grandi. Quindi non voglio codificare tutte le funzioni nella classe proxy. C'è un modo per farlo automaticamente? magari usando le macro, modelli, sovraccarico "->", ecc
Ci sono molte interfacce si scrive lo stesso proxy, o molte classi proxy per la stessa interfaccia, o molti proxy per molte interfacce? – hansmaad
è un po 'confuso: sembra così e l'istanza di I non conosce il proprio indice, ma viene a sapere quando vengono chiamati i suoi metodi f o g ... perché? design strano. Pianificherei il tutto senza mai conoscere il suo indice. Questo avrebbe senso. –
@hansmaad, molti proxy per molte interfacce (one-to-one) –