|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.06.2009, 19:17 | #1 |
Пользователь
Регистрация: 07.06.2009
Сообщений: 12
|
С++ шаблоны функции
задание:
написать шаблон функции поиска минимального элемента в массиве. критерий сравнения элементов передавать через параметр шаблона. пример: найти минимальный по модулю, минимальный по значению остатка от деления на 10. неудачная попытка реализования: template<class T> void print_mas(T* a, int n) { for (int i=0; i<n; ++i) cout<<a[i]<<' '; } template<class T, class C> void bubble_sort(T* a, int n) { for (int n_swap=1; n_swap>0 ; ) { n_swap=0; for (int i=1; i<n; ++i) if (C::lt(a[i],a[i-1])) { mswap(a[i],a[i-1]); ++n_swap; } } } template<class T> void mswap(T &x, T& y){ T t=x; x=y; y=t; } template<class T> class Cmp { public: static bool lt(T a, T b){return a<b;} }; class Cmp_abs { public: static bool lt(double a, double b){return fabs(a)<fabs(b);} }; void main() { int iii[]={10,9,8,-3,11,7,1,2,3,4,5,6}; double fff[]={0.1,0.09,-0.099,0.11,0.7}; bubble_sort<int, Cmp_abs >(iii, sizeof(iii)/sizeof(int)); print_mas(iii, sizeof(iii)/sizeof(int)); cout<<endl; bubble_sort<double,Cmp<double> >(fff, sizeof(fff)/sizeof(double)); print_mas(fff, sizeof(fff)/sizeof(double)); cout<<endl; } |
11.06.2009, 19:24 | #2 | |
Maniac
Форумчанин
Регистрация: 03.01.2009
Сообщений: 450
|
Цитата:
Код:
Стандартные библиотеки разработаны с учетом многолетнего опыта лучших программистов и они не больны "детскими болезнями крутизны в программизме"....
|
|
11.06.2009, 19:26 | #3 |
Maniac
Форумчанин
Регистрация: 03.01.2009
Сообщений: 450
|
или так с класами
Код:
Стандартные библиотеки разработаны с учетом многолетнего опыта лучших программистов и они не больны "детскими болезнями крутизны в программизме"....
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Шаблоны функций. | (*_*) | Общие вопросы C/C++ | 2 | 05.06.2009 20:21 |
Шаблоны форм | Lemo | Общие вопросы Delphi | 16 | 09.02.2009 18:49 |
Шаблоны | bondik | Общие вопросы C/C++ | 10 | 04.05.2008 09:50 |
Word и шаблоны. | Gambler | Microsoft Office Word | 0 | 29.10.2006 20:44 |