razrab83 26 April 14, 2021 Posted April 14, 2021 · Report post код typedef struct MySlideItem { int y; }MySlideItem; MySlideItem slide1, slide2, slide3, slide4; void removeF(MySlideItem *item ) { item->y = 23; } void f1(int a) { removeF(&slide1); } void f2(int a) { removeF(&slide1); } void f3(int a) { removeF(&slide1); } void f4(int a) { removeF(&slide1); } экземпляров структуры MySlideItem 100500. Соответственно однотипных функций типа f1(int) - также 100500. от акына простыней кода должен спасти шаблон. typedef struct MySlideItem { int y; }MySlideItem; MySlideItem slide1, slide2, slide3, slide4; void removeF(MySlideItem *item ) { item->y = 23; } template<MySlideItem BASE> void f1(int a) { removeF(&BASE); } int main() { f1<slide1>(0); } невзлетело. вроде как в аргументы шаблона можно передать пользовательский тип. Что не так? Share this post Link to post Share on other sites More sharing options...
razrab83 26 April 14, 2021 Posted April 14, 2021 · Report post разобрался. в шаблон нельзя передавать не константу, которую нельзя вычислить на этапе компиляции. можно тему удалить. Share this post Link to post Share on other sites More sharing options...