![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
В общем стало интересно можно ли совершить нечто подобное(со старой реализацией переменной длины шаблонов более менее ясно) на новом стандарте.
хочу обьявить шаблонный класс и в итоге(при раскрытии) получить нечто подобное в итоге: Код:
хотя наверно придеться на препроцессор смотреть, там более универсально даст применение(с указанием имен членов) но как то не вариант ![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#2 |
С++
Форумчанин
Регистрация: 22.09.2008
Сообщений: 791
|
![]()
Если нужно в зависимости от аргументов переменное число полей, то без препроцессора никак. Посмотрите в сторону boost preprocessor.
UPD Конечно, можно и на шаблонах, но красиво это не будет. UPD 2 А может и будет. Есть же наследование!
Форматируйте код, будьте людьми.
|
![]() |
![]() |
![]() |
#3 |
С++
Форумчанин
Регистрация: 22.09.2008
Сообщений: 791
|
![]()
Непонятно, что можно сделать с именами. Использование крайне неприятное)
Код:
Форматируйте код, будьте людьми.
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
вернусь значит к препроцессору, может даже к собственному синтаксису оного, если стандартный будет плох.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#5 |
С++
Форумчанин
Регистрация: 22.09.2008
Сообщений: 791
|
![]()
Можно поиграться дальше и сделать доступ к нужному члену через номер в шаблоне, но красивее это не станет. Препроцессор тут - самое то. Удачи!)
Форматируйте код, будьте людьми.
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
самое хучшее что каждый такой член надо еще и инициализировать.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#7 |
С++
Форумчанин
Регистрация: 22.09.2008
Сообщений: 791
|
![]()
Ну, в моей реализации это не такая уж и проблема. Variadic templates дают разгуляться, плюс инициализацию второго и далее членов можно скинуть на надкласс.
Форматируйте код, будьте людьми.
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
там типы могут повторяться..
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#9 |
С++
Форумчанин
Регистрация: 22.09.2008
Сообщений: 791
|
![]()
Это тоже ничего не испортит.
Но, опять же, препроцессором будет в разы красивее.
Форматируйте код, будьте людьми.
|
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
я тоже так думаю, в общем новая фича идет мимо))
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
variadic templates и компиляторы | _Bers | Общие вопросы C/C++ | 4 | 18.01.2013 09:55 |
Выбор значения из списка с автозаполнением остальных полей. | NHVStudio | Microsoft Office Access | 4 | 13.02.2012 09:25 |
Создание пакетного файла с использованием списка значений в качестве параметров. | chaosfall | Операционные системы общие вопросы | 1 | 05.12.2010 21:01 |
MSVS templates | coinkrsk | Общие вопросы C/C++ | 2 | 30.09.2010 09:51 |
Вывод списка выбранных полей, относящихся к элементу DBCheckListBox | Cvetok | Помощь студентам | 0 | 07.06.2008 16:20 |