Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Зюфпъ
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 7
#1

Шаблоны. В чем разница? - C++

20.01.2014, 21:41. Просмотров 295. Ответов 5
Метки нет (Все метки)

В чем разница между этими объявлениями? Вроде и так можно и этак. А как правильней?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
template <class T>
struct list
{
    T value;
    list *prev;
    list *next;
};
 
template <class T>
struct list
{
    T value;
    list<T> *prev;
    list<T> *next;
};
Заранее спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.01.2014, 21:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Шаблоны. В чем разница? (C++):

Шаблоны. В чем разница между созданием экземпляра и специализацией? - C++
Протер глаза о Прата, не могу доехать в чем разница между созданием экземпляра и специализацией. Черканите волшебное слово, что бы сразу...

Шаблоны, чем отличаются два шаблона - C++
Доброго времени суток! Продолжил читать книгу &quot;Решение сложных задач на С++&quot;, в ней есть задача - отправка содержимое из потока ввода в...

В чем разница - C++
В чем разница между: typedef double(*Function_ptr)(double); и typedef double Function(double); Первое - это указатель на...

'0' и 0, в чем разница? - C++
Подскажите пожалуйста, если я напишу число в ' ' или число без кавычек, то что изменится? Код элемента(цифры)? И для чего это нужно? ...

В чем разница - C++
Здравствуйте. Я новичок, как здесь, так и в программировании, только учусь. И ищя литературу прочитывал кучу информации, наткнулся на этот...

В чем разница? - C++
Здравствуйте! Хотел узнать, в чем разница между С++ которым писали в старом добром BorlandC, в студии и VisualC++? Думал тем, что...

5
_script_
169 / 137 / 34
Регистрация: 01.05.2012
Сообщений: 414
20.01.2014, 21:45 #2
Скорее всего разницы нет.
Второй правильнее наверно
0
Зюфпъ
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 7
20.01.2014, 21:55  [ТС] #3
_script_, это точно что между ними нет разницы? Тогда для чего это сделано list<T> *prev ?
0
_script_
169 / 137 / 34
Регистрация: 01.05.2012
Сообщений: 414
20.01.2014, 21:59 #4
я думал, что в первом варианте указателю можно будет присвоить элемент с данными другого типа, но когда проверил, у меня ругалось.
так что пока я разницы не увидел.
может кто то уточнит)
1
Зюфпъ
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 7
20.01.2014, 22:11  [ТС] #5
Похоже никто не знает или все спят)
0
Jupiter
Каратель
Эксперт С++
6558 / 3979 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
21.01.2014, 12:13 #6
Цитата Сообщение от Зюфпъ Посмотреть сообщение
В чем разница между этими объявлениями?
первое - неполное имя, второе - полное (fully qualified name). что это такое читайте в стандарте и в книге Вандервуда по шаблонам.

Добавлено через 5 минут
Цитата Сообщение от Зюфпъ Посмотреть сообщение
А как правильней?
там где имеется ввиду тип лучше применять полное имя, там где требуется лишь имя класса достаточно неполного имени
C++
1
2
3
4
5
6
template<class T>
class Foo
{
    Foo<T>* mChild; //тип
    Foo(...); //тут не тип, тут нам нужно лишь имя класса
};
0
21.01.2014, 12:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2014, 12:13
Привет! Вот еще темы с ответами:

В чем разница. - C++
Извиняюсь за тупой вопрос, но в чем разница. оператора ++ к примеру. a=b++ и a=++b ?

В чем разница? - C++
Скажите в чем разница между двумя кусками кода: std::string a; while ((std::cin&gt;&gt;a)!=&quot;Quit&quot;) { std::cout&lt;&lt;a; ...

в чем разница? - C++
вот такая вот конструкция (условие)?ложь:истина дает такой же результат if(условие){истина}else{ложь} хотелось бы...

В чем разница между [] и * ? - C++
Думал, что ни в чем, но когда попытался сделать так: (в файле 1) char lc; в файле 2: extern char* lc; Компилятор ругаться не стал,...


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

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

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