шаблон с переменным числом параметров

Тема в разделе "LANGS.C", создана пользователем cupuyc, 29 май 2010.

  1. cupuyc

    cupuyc New Member

    Публикаций:
    0
    Регистрация:
    2 апр 2009
    Сообщения:
    763
    есть ли такая функциональность в языке C++?
     
  2. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    в С++0х есть.
    в msvc2010 нет, в гцц - есть
     
  3. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    еще можно использовать boost::mpl::vector
     
  4. cupuyc

    cupuyc New Member

    Публикаций:
    0
    Регистрация:
    2 апр 2009
    Сообщения:
    763
    GoldFinch, спасибо. Не совсем понятно как это использовать. Приведите пример.
     
  5. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    cupuyc
    http://www.google.ru/search?q=Variadic+Templates
     
  6. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    GoldFinch

    mpl::vector как альтернатива variadic templates - это очень тонкий BDSM.
     
  7. Ustus

    Ustus New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2005
    Сообщения:
    834
    Адрес:
    Харьков
    _DEN_
    Ну, если другого нет... да и 0х еще далеко не всеми поддерживается. Хотя до полной функциональности все равно далеко, например аналог примеру из стандарта
    Код (Text):
    1. template < class ... T >
    2. struct Zip
    3. {
    4.     template < class ... U >
    5.     struct With
    6.     {
    7.         typedef std::tuple< std::pair< T, U > ... > Type;
    8.     };
    9. };
    на mpl::vector я даже сходу и не придумаю. Наверное, я мало понимаю в таком тонком BDSM :)
     
  8. J0E

    J0E New Member

    Публикаций:
    0
    Регистрация:
    28 июл 2008
    Сообщения:
    621
    Адрес:
    Panama
    Что бы пример оказался в тему, укажи тему, что хочешь сделать.
     
  9. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Да за примером далеко ходить не нужно. Простейший мотивационный пример - это std::min / std::max с произвольным числом параметров.
     
  10. J0E

    J0E New Member

    Публикаций:
    0
    Регистрация:
    28 июл 2008
    Сообщения:
    621
    Адрес:
    Panama
    Спорим, автор хочет другое? ;)