Полиморфное поведение объектов производного класса в списке STL C++.C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Полиморфное поведение объектов производного класса в списке STL C++.

Сообщение Anonymous »

Я храню объекты базовых и производных классов (Account, StudentAccount, WorkerAccount) в списке STL и обрабатываю их с помощью STL Iterator. Динамического полиморфного поведения объектов не происходит. Прочитав несколько сообщений на этом форуме, мне «кажется» (поскольку я не очень понимаю глубокие технические причины), что полиморфное поведение в списке STL невозможно. Я хотел знать, невозможно ли полиморфное поведение, каков обходной путь? Если мое мнение неверно, поделитесь ссылкой или примером кода. Я застрял в середине прототипа. Ниже приведена основная часть кода:
(с использованием Visual Studio 2022 с ISO C++ 14, консольное приложение)
list* log = new list(); // in constructor

bool Bank::add(const Account& acc)
{
// do some checking here
this->log->push_back(Account(acc));
return true;
}

bool Bank::addAccount(...parameter here...)
{
return this->add(Account(...parameter here...));
}

bool Bank::addStudentAccount(...parameter here...)
{
return this->add(StudentAccount(...parameter here...));
}


Подробнее здесь: https://stackoverflow.com/questions/784 ... c-stl-list
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»