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

Форум программистов: 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 ] 


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

Зарегистрированные пользователи: нет зарегистрированных пользователей


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

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