Ш̴̴̜̥͍͕̼̙̱͙͎͍̘̀̐̔́̾̃͒̈̔̎́́͜р̧̛̺͖͖̯̖ͧͤ͋̅̽ͧ̈̐̽̆̐͋ͤͦͬ͛̃̑͞͞и̒ͥͤͯ͂ͣ̐̉̑ͫ̉̑҉̛͏̸̻͕͇͚̤͕̯̱̳͉ͅф̴̴̡̟̞͙̙̻͍̦͔̤̞̔̓́̍͗̚͢͞ͅт̨̐ͫ̂͊̄̃ͥͪ͏̫̺͍̞̼͈̩̥̜͔͜͜ы̸̴̱̺̼̠̦͍͍͍̱̖͔̖̱͉̅͑͌͒ͫ͒̀ͥ͐ͤ̅͘̕.̵̴̡̭̼̮͖͈̙͖͖̲̮̬͍͙̼̯̦̮̮ͦ̆̀̑̌ͮͧͣͯ̔̂́͟г͌ͮ̏̈͂ͯ̚҉̛̙̬̘̲̗͇͕̠̙͙̼̩͚̀͘͞ͅо̷̥̯̘̓ͤ̽͒̋̉̀̂̄̒̓̊ͨ͛́̌ͤ̂̀͠в̶̒͒̓̏̓̚҉̛̙̘̺̰̮̼̟̼̥̟̘̠̜͜н̸̷̸̲̝͈͙̰̟̻̟̰̜̟̗͎̻̻͍̿̔̃ͨ͑о̔̀̋ͫ̇̿̐ͫ͌͗ͩ҉̨̜̙̙͈͍̮̮̼̙̘̞̕͜͡ Войти !bnw Сегодня Клубы

Есть студия экспресс 2013 и 2013 Nov CTP. Есть набор классов T1, T2, ... Tn, у которых определён тип Ti::R. Как в вариадике template<class ... T> class TT определить список классов R по списку? в g++ и clang работает typedef V<typename T::R ...> VR;

#BWMBL4 / @o01eg / 3656 дней назад

Посмотри на `std::tuple_cat`.
#BWMBL4/NNS / @fix / 3656 дней назад
@fix Выглядит совсем не тем, что надо.
#BWMBL4/KEQ / @o01eg --> #BWMBL4/NNS / 3656 дней назад
Вместо `std::tuple` твой V, и `Make_VR` можно чем-нибудь обернуть, чтобы не писать пустой первый параметр. #include <tuple> template <class ... T> struct Make_VR; template <class ... Args1> struct Make_VR<Make_VR<Args1...>> { typedef std::tuple<Args1...> VR; }; template <class ... Args1, class T, class ... Args2> struct Make_VR<Make_VR<Args1...>, T, Args2...> { typedef typename Make_VR< Make_VR<Args1..., typename T::R>, Args2...>::VR VR; }; struct T1 { typedef int R; }; struct T2 { typedef char R; }; struct T3 { typedef double R; }; typedef Make_VR<Make_VR<>, T1, T2, T3>::VR TT; #include <iostream> int main() { TT test(1, 'a', 1.4); std::cout << std::get<0>(test) << "\n" << std::get<1>(test) << "\n" << std::get<2>(test) << "\n"; }
#BWMBL4/GKS / @fix / 3656 дней назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.