→ Для вступления в общество новичков и профессионалов программирования, пожалуйста нажмите здесь ...

Форум программистов: C++, Basic, Delphi, Pascal, JavaScript
Логин: Пароль:
Запомнить?  
@Mail.ru



Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
специализация 
Автор Сообщение
Начинающий

Регистрация: 17.06.2008
Сообщения: 7
Откуда: Украина

Репутация: 0 [ ? ]
Сообщение специализация
Драсте. Тут есть одна програмка: должна иметь шаблонную функцию , что принимает масив и возвращает наибольшее значение в масиве.
Так же должна быть специализация, которая принимает масив указателей на сhar и возвращает адрес самой длинной строки. Вот какраз со специализацией у меня чтото не получается, я чтото запутался. Вот что я сделал:Код

[syntax=cpp]#include <iostream>
#include <cstring>
using namespace std;
template<typename t>
t maxs(t mas[], int z);
template <> char * maxs(char * mas[],int z);

int main()
{
int mas1[4] = {1, 2,3, 4};
double mas2[6] = {2.3, 4.9, 4.5, 6.7,8.9, 1.0};
char * mas6[3][20]=
{
"malenkaya ",
"srednyaya str",
"samaya bolchaya"
};
int x = maxs(mas1,4);
double y = maxs(mas2,6);
cout << "naibolchee znachenie int i double\n"
<< x <<"\t"<<y<< endl;
char * n =maxs(mas6,3);
cout << *n<<endl;
return 0;
}

template<typename t>
t maxs(t mas[], int z)
{
double x=0;
for (int i=0; i<z;i++)
if (x<mas[i])
x=mas[i];
return x;
}

template <> char * maxs(char * mas[],int z)
{
int t=0,r=0;
char y= 'a';
char *c =&y;
for(int i=0; i<z; i++)
{
t=strlen(*mas[i]);
r=strlen(*c);
if(t>r)
c = mas[i];
}

return c;
}[/syntax]


Подскажите как надо правильно обьявить специализацию. Я чтото в притул не пойму как надо правильно передать масив указателей. ( дайте пожалуйста пример)

_________________
ищу хакера со знанием компьютера


24.06.2008 9:28
Профиль
Начинающий

Регистрация: 18.10.2008
Сообщения: 2

Репутация: 0 [ ? ]
Сообщение 


18.10.2008 21:23
Профиль
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 


Кто сейчас на конференции

Зарегистрированные пользователи: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
cron
© 2013 «Форум программистов Украины»