Здраствуйте колеги!
Подскажите как побороть проблему!
Пожалуйста
есть шаблонная структура:
template <typename T>
struct SES_VAR
{
private:
T* ptr;
bool bAlloc;
string name;
public:
void set(T*& val,const bool a = true)
{
if (a)
{
ptr = new T();
bAlloc = a;
val = ptr;
}
else
{
ptr = val;
}
}
SES_VAR()
{
ptr = NULL;
bAlloc = false;
}
~SES_VAR()
{
if (ptr != NULL)
{
if (bAlloc)
{
delete ptr;
ptr = NULL;
}
}
}
};
Как создать вектор указателей на эти структуры, но чтобы при очистке не делать самому приведение к типу:
void main()
{
SES_VAR<int> a;
int* pA;
a.set(pA);
vector <void*> arr;
arr.push_back(&a);
for (size_t i =0; i < arr.size(); ++i)
{
void* ptr = arr.at(i);
// но сдесь я не знаю тип....
delete (SES_VAR<int>*)ptr;
}
}
Помогите пожалуйста......