Переходя от C, как реализовать двусвязный список на C++, используя функции C++?C++

Программы на C++. Форум разработчиков
Anonymous
Переходя от C, как реализовать двусвязный список на C++, используя функции C++?

Сообщение Anonymous »

Я перехожу с C на C++ и стараюсь избегать использования практик C в C++.

Говорят, что необработанные указатели — это функция C, и что в C++ вместо этого следует использовать интеллектуальные указатели, однако каждый пример реализации двусвязного списка, который я видел в Интернете, начинается примерно так -

Код: Выделить всё

...
class DoublyLinkedList {
struct Node {
int data;
Node* prev;
Node* next;
};

Node* head;
Node* tail;
...
};
Я изо всех сил пытаюсь найти элегантный способ реализовать это с помощью интеллектуальных указателей.

Я мог бы реализовать это с помощью общих указателей, но я слышал, что их следует использовать редко и что вам следует попытаться реализовать это с использованием unique_ptr по умолчанию.

Подробнее здесь: https://stackoverflow.com/questions/798 ... c-features

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