stl — Объявление типа данных динамического стека в переполнении стека

Можно ли сделать следующее:

dtype            //contains data type information
stack<dtype> st; // stack declartion

Я хочу динамически определить тип стека. Возможно ли сделать это в C ++?

0

Решение

Да, это возможно. По этой причине вы можете использовать полиморфизм и сохранить указатель на базовый класс в качестве аргумента шаблона стака. Затем во время выполнения вы можете решить, какой тип объекта выделить. Важно то, что он должен быть производным от базового класса.

class Object;
class A : public Object;
class B : public Object;
std::stack<Object*> buf;
if (...)
{
buf.push(new A);
} else
{
buf.push(new B);
}
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]