Open alexey-malov opened 7 years ago
bool m_isReverse = b false;
странный код
void PushBack(const T & data)
{
auto newNode = std::make_unique<SNode>(data, m_lastNode, nullptr);
SNode *newLastNode = newNode.get();
if (m_lastNode)
{
m_lastNode->next = std::move(newNode);
}
else
{
m_firstNode = std::move(newNode);
}
m_lastNode = newLastNode;
m_lastNode->next = nullptr;
++m_size;
}
[ ] Зачем повторно обнулять next?
[ ] Аналогичное замечания насчет PushFront
it.get()->prev = std::move(node.get());
if (it == begin())
{
it.get()->next.get()->prev = nullptr;
m_firstNode = move(it.get()->next);
}
else if (it.get()->data == GetBackElement())
{
it.get()->prev->next = nullptr;
m_lastNode = std::move(it.get()->prev);
}
else
{
it.get()->next->prev = std::move(it.get()->prev);
it.get()->prev->next = std::move(it.get()->next);
}
[ ] Код трудно читается. Введите доп узлы, либо методы у структуры node
[ ] move стоит где надо и где не надо
if (m_size > 0)
{
m_size--;
}