С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 59, средняя оценка - 4.61
neon-st
2 / 2 / 0
Регистрация: 20.12.2008
Сообщений: 11
#1

Шаблон (односвязный список) - C++

21.12.2008, 17:58. Просмотров 8888. Ответов 4
Метки нет (Все метки)

Помогите пожалуйста мне в вопросе с односвязным списком.
мне нужно реализовать в виде шаблонного класса вычислительную структуру односвязный список.
Объясните мне,простым языком, суть односвязного списка и как сделать шаблонный класс односвязного списка.
Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2008, 17:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Шаблон (односвязный список) (C++):

Cоздать класс-шаблон, реализующий односвязный список - C++
Помогите новичку, пожалуйста, с такой задачей: необходимо создать класс-шаблон, реализующий односвязный список, а потом проверить его с...

Сформировать список из 10 книг, используя динамическую структуру данных односвязный список - C++
друзья спасайте Сформировать список из 10 книг, используя динамическую структуру данных односвязный список С++

Создать двусвязный список групп факультета, где каждая группа представляет собой односвязный список студентов - C++
Задание: создайте двусвязный список групп факультета. Каждая группа представляет собой односвязный список студентов. Помогите пожалуйста,...

Шаблоны функций, Ошибка: для использования класса шаблон требуется список аргументов шаблон - C++
Есть у меня 3 структуры Трамвай , Троллейбус , Автобус. Для автобуса определены функции (работают) Троллейбус и Трамвай одинаковые поля...

Задали односвязный линейный список с целыми числами. Создать новый список, который содержит элементы заданного списка в обратном порядке - C++
Задали односвязный линейный список с целыми числами. Создать новый список, который содержит элементы заданного списка в обратном порядке.

Односвязный список - C++
Смотрю уроки по односвязному списку. У автора в 37 строке кода происходит инициализация структуры. Но как программа определит, что значения...

4
CheshireCat
Эксперт С++
2896 / 1245 / 78
Регистрация: 27.05.2008
Сообщений: 3,405
21.12.2008, 21:45 #2
Суть односвязного списка: Каждый элемент такого списка содержит собственно данные и указатель на следующий элемент. Указатель на первый элемент (или специальное значение, обычно - NULL, если элементов нет) хранится в т.н. "голове" списка. Указатель на следующий элемент последнего элемента хранит также специальное значение - обычно NULL, что означает "больше элементов нет".

А шаблон делается для любого типа данных с помощью ключевого слова template.

Примерно где-то так:
Код
template <typename T>
struct ListElem
{
    T            data;    // данные
    ListElem*    next;    // указатель на след. эл-т
};

template <typename T>
class SingleLinkedList
{
    ListElem<T>*     head;
    // тут методы добавления и прочее...
};
Вместо T компилятор сам подставит в нужный момент нужный тип данных.
0
neon-st
2 / 2 / 0
Регистрация: 20.12.2008
Сообщений: 11
21.12.2008, 21:53  [ТС] #3
спасибо.а вот можно написать метод добавления и печати списка?
0
Piksel
0 / 0 / 0
Регистрация: 04.01.2009
Сообщений: 3
06.01.2009, 20:30 #4
Меня интересует один вопрос, связанный с шаблонами в C++. Я написал шаблонный класс и захотел спецеализировать одну из функций. Я могу написать вот так:
C++
1
2
template <>
              имя_класс<int, int>::имя_функции(список_аргументов) {...}
Но если я хочу написать так:
C++
1
2
template <class T>
              имя_класс<int, T>::имя_функции(список_аргументов) {...}
То компилятор выдает ошибку, что нужно создать специализированный класс. Пожалуйста поясните этот мой пробел. Заранее благодарен.
0
Piksel
0 / 0 / 0
Регистрация: 04.01.2009
Сообщений: 3
08.01.2009, 15:23 #5
Неужели никто не может пояснить мой вопрос?
0
08.01.2009, 15:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2009, 15:23
Привет! Вот еще темы с ответами:

Односвязный список - C++
Написал программу, которая сортирует массив по неубыванию и добавляет в него элемент, не нарушая упорядоченности. Как переделать ее под...

Односвязный список - C++
Люди помогите пожалуйста с лабораторной сделал прогу по заданию а преподаватель говорит что не правильно сделана функция поиска и вообще...

Односвязный список - C++
Помогите пожалуйста написать функцию поиска числа заданного пользователем в односвязном списке

Односвязный список - C++
Помогите пожалуйста доделать программу, а то я не могу, надо именно в таком формате (векторное представление списка) Само задание - к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.