LINUX.ORG.RU

История изменений

Исправление dissident, (текущая версия) :

Кажется я поверхностно понял. Просто мое знание C++ до сих пор огранивалось до наследования и такого рода вещей. Если я правильно поверхностно понял то:

  • Во первых я забыл, что template function (где нет partial specialization, почему и нужен Type2Type, чтобы эмулировать partial specialization overload’ом (впрочем это не по теме)) и template class (где partial specialization есть) - это разные вещи
  • Во вторых я так понимаю, что template functions с тем же самым названием могут иметь любое количество template параметров (причем разное в разных template функциях, причем с тем же названием) - прошу поправить если это не так
  • В третьих я перепутал partial specialization класса («уменьшение» template параметров, вернее скорее приравнивание их друг к другу) с созданием класса с тем же именем, но позже (в смысле в файле позже) и с большим количеством параметров, что невозможно без variadic templates - опять же прошу поправить меня если это не так

PS Я понимаю, что читаю о старой версии C++, но б… как же можно было так заморочить язык. :-\

Исправление dissident, :

Кажется я поверхностно понял. Просто мое знание C++ до сих пор огранивалось до наследования и такого рода вещей. Если я правильно поверхностно понял то:

  • Во первых я забыл, что template function (где нет partial specialization, почему и нужен Type2Type, чтобы эмулировать partial specialization overload’ом (впрочем это не по теме)) и template class (где partial specialization есть) - это разные вещи
  • Во вторых я так понимаю, что template functions с тем же самым названием могут иметь любое количество template параметров - прошу поправить если это не так
  • В третьих я перепутал partial specialization класса («уменьшение» template параметров, вернее скорее приравнивание их друг к другу) с созданием класса с тем же именем, но позже (в смысле в файле позже) и с большим количеством параметров, что невозможно без variadic templates - опять же прошу поправить меня если это не так

PS Я понимаю, что читаю о старой версии C++, но б… как же можно было так заморочить язык. :-\

Исходная версия dissident, :

спасибо!

Кажется я поверхностно понял. Просто мое знание C++ до сих пор огранивалось до наследования и такого рода вещей. Если я правильно поверхностно понял то:

  • Во первых я забыл, что template function (где нет partial specialization) и template class - это разные вещи
  • Во вторых я так понимаю, что template functions с тем же самым названием могут иметь любое количество template параметров - прошу поправить если это не так
  • В третьих я перепутал partial specialization класса («уменьшение» template параметров, вернее скорее приравнивание их друг к другу) с созданием класса с тем же именем, но позже (в смысле в файле позже) и с большим количеством параметров, что невозможно без variadic templates - опять же прошу поправить меня если это не так

PS Я понимаю, что читаю о старой версии C++, но б… как же можно было так заморочить язык. :-\