5 / 5 / 2
Регистрация: 29.03.2012
Сообщений: 101
|
||||||
1 | ||||||
Передать шаблон std::array в другой шаблон08.03.2019, 11:13. Просмотров 1811. Ответов 5
Метки шаблоны кода (Все метки)
Шаблон std::vector передать получается:
0
|
|
08.03.2019, 11:13 | |
Реализовать шаблон Array Расстановка девяти чисел (Turbo C) Выводит ошибку using Matrix = std::array<std::array<int, 3>, 3>; и bool NextSet Std::thread шаблон класса Шаблон как тип контейнера std::set |
|
13692 / 7320 / 1746
Регистрация: 30.01.2014
Сообщений: 12,260
|
||||||
08.03.2019, 13:15 | 2 | |||||
HelloWorld56, вот прямо так напрямую - не получится. У шаблонов разный набор параметров, они не совместимы (у array - второй параметр - это его размер, а у вектора - аллокатор) и под заданный вами паттерн не подойдут.
Можно сделать через небольшой адаптер: Кликните здесь для просмотра всего текста
Но прежде, чем это делать, надо подумать, а нужно ли это вообще: ведь работа с vector и array может довольно сильно различаться. И трудности их обобщения красноречиво говорят о том, что мы пытаемся скрестить ужа и ежа.
1
|
522 / 349 / 129
Регистрация: 11.01.2019
Сообщений: 1,463
|
|
08.03.2019, 13:34 | 3 |
А зачем переделывать? Или может хотите специализировать для своего типа?
0
|
5 / 5 / 2
Регистрация: 29.03.2012
Сообщений: 101
|
|
08.03.2019, 13:38 [ТС] | 4 |
Так мне и не нужно обобщать vector и array в одном шаблоне. Меня интересует как передать array в шаблон, который принимает только array, а не vector и array.
0
|
13692 / 7320 / 1746
Регистрация: 30.01.2014
Сообщений: 12,260
|
||||||
08.03.2019, 13:40 | 5 | |||||
![]() Решение
Это другой разговор.
Вот:
0
|
738 / 342 / 71
Регистрация: 10.06.2014
Сообщений: 2,358
|
|
08.03.2019, 14:01 | 6 |
HelloWorld56,
Если тип заранее известен, то думаю нет смысла использовать шаблоны для этого типа (т.е не передавать array в качестве шаблонного аргумента).
0
|
08.03.2019, 14:01 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Отсутствует список аргументов для шаблон класса std::vector Шаблоны функций, Ошибка: для использования класса шаблон требуется список аргументов шаблон Шаблон стека изменить на шаблон очереди Подключение cpp файла дает ошибку "std::array: слишком мало аргументов шаблон" Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |