Cojonuda la iniciativa :D . La verdad es que se echaba de menos algo así, me parece un complemento perfecto para Stratos. Enhorabuena.
Metaxas
Metaxas
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menu
#include <list>
enum { AType = 0, BType = 1 };
class IBase
{
public:
virtual unsigned int GetType() = 0;
};
class A : public IBase
{
public:
unsigned int GetType()
{
return AType;
}
void FuncA() {};
};
class B : public IBase
{
public:
unsigned int GetType()
{
return BType;
}
void FuncB() {};
};
int main(int argc, char* argv[])
{
std::list<IBase *> ptrList;
A a;
B b;
ptrList.push_back(&a);
ptrList.push_back(&b);
IBase *ptrBase = ptrList.front();
unsigned int type = ptrBase->GetType();
switch (type)
{
case AType: A *ptrA;
ptrA = dynamic_cast<A *> (ptrBase);
ptrA->FuncA();
break;
case BType: B *ptrB;
ptrB = dynamic_cast<B *> (ptrBase);
ptrB->FuncB();
break;
default: break;
}
return 0;
}
template<class T> int Function(T *ptr)
{
return ptr->DoSomething();
}
class I
{
public:
virtual int DoSomething() = 0;
};
class A : public I
{
public:
virtual int DoSomething()
{
return 0;
}
};
class B : public I
{
public:
virtual int DoSomething()
{
return 1;
}
};
int main(int argc, char* argv[])
{
A a;
B b;
int value1 = Function(&a); // value1 vale 0
int value2 = Function(&b); // value2 vale 1
return 0;
}
Citar- DirectGfx: Es normal q si no limpio el backbuffer, me lo limpie el DX con pantallazos de colores ????