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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Satansoft
8 / 8 / 1
Регистрация: 27.02.2012
Сообщений: 724
#1

Сравнение параметров перегруженной ф-ии - C++

27.02.2013, 03:41. Просмотров 269. Ответов 6
Метки нет (Все метки)

Есть два типа параметров у ф-ии (перегрузка) long int и float, нужно их сравнить на "больше-меньше" (не понятно как) и указать на правильность реализации перегрузки.

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
#include <iostream>
 
using namespace std;
 
long int* data(long int *a)
 
{
    cout<<*a<<endl;
    return(a);
}
 
float data(float z)
 
{
    cout<<z<<endl;
    return(z);
}
 
int main()
 
{
data(537);
data(537.453252);
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2013, 03:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сравнение параметров перегруженной ф-ии (C++):

Сравнение строк в перегруженной функции - C++
Здравствуйте! есть перегруження функция Block* BlocksList::Find(string text) const { BlockNode * pNode = 0; int...

Сравнение параметров папок С-С++ - C++
При задании любого имени папки совершается поиск на всем диске папок с таким именем, и через меню совершается сравнение параметров( размер,...

Создание перегруженной функции - C++
Создайте перегруженные функции для вычисления абсолютной величины числа. Одна функция работает с числами типа int, другая с типом double....

Функция с переменным числом параметров находящая максимальный элемент в списке параметров - C++
Написать функцию с переменным числом параметров:Максимальный из элементов в списке параметров, стоящих на нечетных местах....

Функция с переменным числом параметров, как узнать кличество переданных параметров? - C++
Добрый вечер, можно не использовать int n, а каким то другим способом узнать количество переданных аргументов в функцию и адрес? int suma...

Неоднозначный вызов перегруженной функции - C++
#include &quot;stdafx.h&quot; #include &lt;cstdlib&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;Windows.h&gt; #include &lt;iomanip&gt; #include...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Croessmah
Эксперт CЭксперт С++
13221 / 7493 / 845
Регистрация: 27.09.2012
Сообщений: 18,412
Записей в блоге: 3
Завершенные тесты: 1
27.02.2013, 03:46 #2
Цитата Сообщение от Satansoft Посмотреть сообщение
нужно их сравнить на "больше-меньше"
В каком смысле сравнить? Сравнить типы данных? По какому критерию?
Цитата Сообщение от Satansoft Посмотреть сообщение
C++
1
long int *a
Это вообще указатель и не понятно как он сюда залез
1
Satansoft
8 / 8 / 1
Регистрация: 27.02.2012
Сообщений: 724
27.02.2013, 03:53  [ТС] #3
Без указателя не работает :3 Через ф-ю мейн присвоил значения аргументам ф-ии и нужно найти наибольший из двух аргументов ф-и.
Задание звучит:Написать программу, содержащую функцию, для определения наибольшего из двух аргументов. Перегрузить эту ф-ю для целых, аргументов типа long и аргументов с плавающей точкой.
0
Croessmah
Эксперт CЭксперт С++
13221 / 7493 / 845
Регистрация: 27.09.2012
Сообщений: 18,412
Записей в блоге: 3
Завершенные тесты: 1
27.02.2013, 04:00 #4
Цитата Сообщение от Satansoft Посмотреть сообщение
найти наибольший из двух аргументов ф-и
Так у Вас две функции с одним аргументом
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
 
long int max(long int x1,long int x2){
    return x1>x2?x1:x2;
}
float max(float x1,float x2){
    return x1>x2?x1:x2;
}
 
int main(){
    std::cout<<max(123l,432)<<std::endl;
    std::cout<<max(432.54f,432.23)<<std::endl;
}
1
Satansoft
8 / 8 / 1
Регистрация: 27.02.2012
Сообщений: 724
27.02.2013, 04:21  [ТС] #5
Короче я задание не понял и пытался сравнивать аргументы типа long и float между собой, так вообще можно? Как-то неоднозначно задание звучит...
И как быть в случае, когда x1<x2?
0
Kortez
0 / 0 / 0
Регистрация: 27.02.2013
Сообщений: 10
27.02.2013, 04:45 #6
Цитата Сообщение от Satansoft Посмотреть сообщение
И как быть в случае, когда x1<x2?
Если я правильно понял вопрос - в коде функций используется тренарная операция. Она работает как конструкция
Код
if(выражение) - then{если выражение истинно} - else{если выражение ложно}
.
Выглядит это так:
Код
(выражение)?(если выражение истинно):(если выражение ложно)
.
0
Satansoft
8 / 8 / 1
Регистрация: 27.02.2012
Сообщений: 724
27.02.2013, 04:52  [ТС] #7
Заработало, хоть синтаксис интуитивно ясен, С++ только принят к изучению...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2013, 04:52
Привет! Вот еще темы с ответами:

Найти ошибку в перегруженной функции - C++
Почему-то произведению присваивется размер массива. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include...

Неоднозначный вызов перегруженной функции - C++
Ввести с клавиатуры число n. Динамически выделить память для массива целых чисел размером n. Заполнить массив данными с клавиатуры....

Pow: нет перегруженной функции - C++
Ошибка 2 error C2661: pow: нет перегруженной функции, принимающей 1 аргументов C:\Users\student\Desktop\Языки программирования\zada4a...

Неоднозначый вызов перегруженной функции - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int _tmain(int argc, _TCHAR* argv) { float...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
27.02.2013, 04:52
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru