I cannot figure this out. I need to have an abstract template base class, which is the following:
template class Dendrite
{
public:
Den
Typically this is done by your template inheriting from an interface class, IE:
template class Dendrite : public IDendrite
{
public:
Dendrite()
{
}
virtual ~Dendrite()
{
}
void Get(std::vector &o) = 0;
protected:
std::vector _data;
};
and then you're IDendrite class could be stored as pointers:
std::vector m_dendriteVec;
However, in your situation, you are taking the template parameter as part of your interface. You may also need to wrap this also.
class IVectorParam
{
}
template
class CVectorParam : public IVectorParam
{
std::vector m_vect;
}
giving you
class IDendrite
{
...
public:
virtual ~IDendrite()
virtual void Get(IVectorParam*) = 0;
}
template class Dendrite : public IDendrite
{
...
// my get has to downcast to o CVectorParam
virtual void Get(IVectorParam*);
};