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

Шаблон структуры - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 41, средняя оценка - 4.61
Gregory_Mas
3 / 3 / 0
Регистрация: 06.10.2012
Сообщений: 26
14.10.2012, 08:58     Шаблон структуры #1
можно ли в с++ создать шаблон структуры? Не класса, именно структуры.

Т.е. есть у меня
struct A
{
float e;
float e1;
};

И то же самое, но с int'ами. Могу сделать обобщенную структуру? И как?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2012, 08:58     Шаблон структуры
Посмотрите здесь:

C++ Динамические структуры данных. Программа ввода в структуры и вывода информации из неё.
C++ Шаблон структуры данных - массив указателей на заголовки списков
Структуры, массивы структур (как можно присваивать(инициализировать) значения полям структуры) C++
Функция внутри структуры использует указатель, как поле этой структуры C++
C++ Шаблон структуры данных
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
14.10.2012, 13:29     Шаблон структуры #21
хз что именно вы там сделали. выкладывайте новый код и укажите где и как ругается?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gregory_Mas
3 / 3 / 0
Регистрация: 06.10.2012
Сообщений: 26
14.10.2012, 13:51  [ТС]     Шаблон структуры #22
Вот парадокс! При попытке сделать обратно (с типом О) компилятор выдал... Построение успешно завершено.

Похоже, у меня крыша поехала, пойду прогуляюсь.

Еще раз всем спасибо за помощь!)
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
14.10.2012, 13:51     Шаблон структуры #23
Gregory_Mas, но вот это никуда не годится. Какой смысл передавать в функцию ноли?
C++
1
B=rec(i,0,0,m);
Gregory_Mas
3 / 3 / 0
Регистрация: 06.10.2012
Сообщений: 26
14.10.2012, 13:58  [ТС]     Шаблон структуры #24
alsav22, Есть другой вариант сделать рекурсивную функцию? Я не против посмотреть, честно.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
14.10.2012, 14:08     Шаблон структуры #25
Вы тогда, хотя бы, сделайте их значениями по умолчанию:
C++
1
2
3
4
5
6
7
8
9
10
...
A<O> rec(int i, O m[], O max = 0, int ind = 0 )
...
return m[i] > max ? rec (i, m, m[i], i) : rec (i, m, max, ind);
....
int main()
{....
  B=rec(i, m);
...
}
Gregory_Mas
3 / 3 / 0
Регистрация: 06.10.2012
Сообщений: 26
14.10.2012, 14:18  [ТС]     Шаблон структуры #26
О как. Не знал, что так можно.
Изначально, увидев код, думал, что при новом вызове функции параметры обнулятся.

Т.е. если в функции мы таким образом задаем новые параметры, то они задаются нулями только 1 раз?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.10.2012, 14:45     Шаблон структуры
Еще ссылки по теме:

Шаблоны функций, Ошибка: для использования класса шаблон требуется список аргументов шаблон C++
Вывод структуры, строка как элемент структуры C++
C++ Шаблон функции, использующий поля структуры

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

Или воспользуйтесь поиском по форуму:
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
14.10.2012, 14:45     Шаблон структуры #27
Цитата Сообщение от Gregory_Mas Посмотреть сообщение
Т.е. если в функции мы таким образом задаем новые параметры, то они задаются нулями только 1 раз?
Зависит от того, с каким количеством аргументов вызывается функция. Если, при вызове функции, будет только два аргумента, то третьему и четвёртому параметру присвоится 0. Если три, то четвёртому параметру присвоится 0. Если все четыре, то будут такие, как при вызове.

Добавлено через 5 минут
При вызове из main() у функции два аргумента, поэтому третий и четвёртый буду 0. При рекурсивном вызове аргументов четыре, поэтому их значения уже будут не по умолчанию, а какие есть.
Yandex
Объявления
14.10.2012, 14:45     Шаблон структуры
Ответ Создать тему
Опции темы

Текущее время: 08:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru