Форум программистов, компьютерный форум CyberForum.ru

Шаблон функции не работает - C++

Восстановить пароль Регистрация
 
bemol5
0 / 0 / 0
Регистрация: 22.06.2013
Сообщений: 8
10.07.2013, 13:31     Шаблон функции не работает #1
В чем я допустил ошибку? Почему шаблон функции не работает?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
 
using namespace std;
template < typename O >
O max( O number1, O number2 )
{
    O maxValue = number1;
    if ( number 2 > maxValue )
        maxValue = number2;
    return maxValue;
}
int main()
{
    int x, y;
    cout <<"Enter 2 number: ";
    cin >> x >> y;
    cout <<"The maximum is " << max( x, y) << endl;
 
    double d1, d2;
    cout << "Enter 2 double number: ";
    cin >> d1 >> d2;
    cout << "The maximum is :" << max( d1, d2 ) << endl;
 
    system("pause");
    return 0;
}
Программа должна возвращать большее из двух чисел.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.07.2013, 13:31     Шаблон функции не работает
Посмотрите здесь:

C++ Шаблон функции
шаблон функции C++
Шаблон функции C++
Шаблон функции C++
C++ Шаблон функции
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Valentina
66 / 66 / 3
Регистрация: 13.05.2012
Сообщений: 130
10.07.2013, 13:47     Шаблон функции не работает #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
 
using namespace std;
template < typename O >
O max2( O number1, O number2 )
{
    O maxValue = number1;
    if ( number2 > maxValue )
        maxValue = number2;
    return maxValue;
}
int main()
{
    int x, y;
    cout <<"Enter 2 number: ";
    cin >> x >> y;
    cout <<"The maximum is " << max2( x, y) << endl;
 
    double d1, d2;
    cout << "Enter 2 double number: ";
    cin >> d1 >> d2;
    cout << "The maximum is :" << max2( d1, d2 ) << endl;
 
    system("pause");
    return 0;
}
Ошибка в имени функции max()
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11827 / 6806 / 769
Регистрация: 27.09.2012
Сообщений: 16,878
Записей в блоге: 2
Завершенные тесты: 1
10.07.2013, 13:50     Шаблон функции не работает #3
Цитата Сообщение от bemol5 Посмотреть сообщение
Программа должна возвращать большее из двух чисел.
C++
1
2
3
4
template<typename T>
T my_max(const T & first,const T & second){
    return first<second?second:first;
}
kventin_zhuk
БНТУ ФИТР
 Аватар для kventin_zhuk
214 / 154 / 15
Регистрация: 26.12.2012
Сообщений: 382
10.07.2013, 14:03     Шаблон функции не работает #4
C++
1
 if ( number 2 > maxValue )
Как такое скомпилировалось - даже хз. Пробел между number и 2 явно лишний
bemol5
0 / 0 / 0
Регистрация: 22.06.2013
Сообщений: 8
10.07.2013, 14:07  [ТС]     Шаблон функции не работает #5
Всем спасибо!
Я так понимаю что функция max() уже имеется в библиотеке?
kventin_zhuk
БНТУ ФИТР
 Аватар для kventin_zhuk
214 / 154 / 15
Регистрация: 26.12.2012
Сообщений: 382
10.07.2013, 14:14     Шаблон функции не работает #6
bemol5, std::max
Yandex
Объявления
10.07.2013, 14:14     Шаблон функции не работает
Ответ Создать тему
Опции темы

Текущее время: 21:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru