Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 29.10.2011
Сообщений: 110

Информация о вызванной перегрузке функции

06.04.2012, 07:25. Показов 741. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
нужно в соответствии с замечанием изменить прилагаемый код : Сделать так, чтоб было видно, какая из перегруженных функций вызывалась. Напрмер функция дополнительно выводмиь строку типа "Результат вызова функции с целыми параметрами".
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <stdio.h>
 
int isNegative(int    val);
int isNegative(double val);
 
int main()
{
    int a    = 0;
    double b = 0;
    while(1)
    {
        printf("Vvedite celoe chislo    : ");scanf("%d",&a);
        printf("Vvedite veshestv chislo : ");scanf("%lf",&b);
        printf("Chislo a = %d\n",a);
        if(isNegative(a))
            printf(" otricatelnoe\n");
        else
            printf(" polozhitelnoe\n");
        printf("Chislo b = %lf\n",b);
        if(isNegative(b))
            printf(" otricatelnoe\n");
        else
            printf(" polozhitelnoe\n");
    }
    return 0;
}
 
int isNegative(int val)
{
    int flag = 0;
    if(val < 0)
        flag = 1;
    return flag;
}
 
int isNegative(double val)
{
    int flag = 0;
    if(val < 0)
        flag = 1;
    return flag;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.04.2012, 07:25
Ответы с готовыми решениями:

Ошибка при работе функции вызванной из SWITCHa
Почему при выборе первого элемента SWITCHa, то есть case 1, функция Enter_Data() работает не правильно, игнорируются некоторые строки? А...

Ожидание выполнения функции, вызванной из потока
Задача в том, что мне нужно посчитать за сколько времени запустится и удалится не приостановленный поток из которого я вызываю свою...

Что это за параметр в перегрузке функции?
Здравствуйте, вот есть код для перегрузки оператора взятия индекса массива: #include &lt;cassert&gt; int&amp; IntArray::operator (int...

6
Формучанин
364 / 296 / 42
Регистрация: 02.11.2010
Сообщений: 1,245
06.04.2012, 07:54
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
 
int isNegative(int    val);
int isNegative(double val);
 
int main()
{
    int a    = 0;
    double b = 0;
    while(1)
    {
        std::cout<<"Vvedite celoe chislo    : ";std::cin>>a;
        std::cout<<"Vvedite veshestv chislo : ";std::cin>>b;
        std::cout<<"Chislo a = "<<a<<"\n";
        if(isNegative(a))
            std::cout<<" otricatelnoe\n";
        else
            std::cout<<" polozhitelnoe\n";
        
        std::cout<<"Chislo b = "<<b<<"\n";
                
        if(isNegative(b))
            std::cout<<" otricatelnoe\n";
        else
            std::cout<<" polozhitelnoe\n";
    }
    return 0;
}
 
int isNegative(int val)
{
    std::cout<<"(value is int)";            
    return (val < 0)?1:0;
        
}
 
int isNegative(double val)
{
    std::cout<<"(value is double)";
    return  (val < 0)?1:0;
    
}
1
1234 / 424 / 107
Регистрация: 31.03.2012
Сообщений: 1,159
06.04.2012, 08:19
Не разу не слышал о перегрузке функций в C, может немножко отстал от жизни
а вот пример для C++:
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>
int a(int i);
double a(double d);
long a(long l);
 
int main() {
    std::cout << a(10);
    std::cout << a(10.0);
    std::cout << a(10L);
    return 0;
}
int a(int i){
    std::cout << "Вызвана с параметром - int\n";
    return i;
}
 
double a(double d) {
    std::cout << "Вызвана с параметром - double\n";
    return d;
}
long a(long l) {
    std::cout << "Вызвана с параметром - long\n";
    return l;
}
Добавлено через 16 минут
Немножко опоздал, уже подсказал nxnx
1
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
06.04.2012, 21:52
Цитата Сообщение от jeka061288 Посмотреть сообщение
нужно в соответствии с замечанием изменить прилагаемый код : Сделать так, чтоб было видно, какая из перегруженных функций вызывалась. Напрмер функция дополнительно выводмиь строку типа "Результат вызова функции с целыми параметрами"
Сразу отмечу что перегрузка как таковая присуща С++ в Си её нет. Ниже мой взгляд на проблему
C++ (Qt)
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <iostream>
using namespace std;
 
//Прототипы перегруженных функций
bool isNegative(int    val);
bool isNegative(long   val);
bool isNegative(double val);
 
int main()
{
    int    i_val;
    long   l_val;
    double d_val;
 
    cout<<"Vvedite int    : ";cin>>i_val;
    cout<<"Vvedite long   : ";cin>>l_val;
    cout<<"Vvedite double : ";cin>>d_val;
    cout<<"Chislo : "
        <<i_val
        <<" : "
        <<(isNegative(i_val) ? "otricatelnoe" : "polozhitelnoe")
        <<endl;
    cout<<"Chislo : "
        <<l_val
        <<" : "
        <<(isNegative(l_val) ? "otricatelnoe" : "polozhitelnoe")
        <<endl;
    cout<<"Chislo : "
        <<d_val
        <<" : "
        <<(isNegative(d_val) ? "otricatelnoe" : "polozhitelnoe")
        <<endl;
    system("pause");
    return 0;
}
 
bool isNegative(int    val)
{
    bool bFlag = false;
    if(val < 0)
        bFlag = true;
    cout<<"\nResultat funkcii s parametrom int : "
        <<(bFlag ? "otricatelnoe" : "polozhitelnoe")
        <<endl;
    return bFlag;
}
 
bool isNegative(long   val)
{
    bool bFlag = false;
    if(val < 0)
        bFlag = true;
    cout<<"Resultat funkcii s parametrom long : "
        <<(bFlag ? "otricatelnoe" : "polozhitelnoe")
        <<endl;
    return bFlag;
}
 
bool isNegative(double  val)
{
    bool bFlag = false;
    if(val < 0)
        bFlag = true;
    cout<<"Resultat funkcii s parametrom double : " 
        <<(bFlag ? "otricatelnoe" : "polozhitelnoe")
        <<endl;
    return bFlag;
}
Миниатюры
Информация о вызванной перегрузке функции  
1
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
06.04.2012, 22:10
А теперь хотел бы обратить внимание всех ответчиков на код ниже
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
namespace my
{
    template <class T>
    T cout(T param)
    {
        return param;
    }
}
using namespace std;
 
int main()
{
    cout<<"Test\n";
    cout<<my::cout("Test\n");
    system("pause");
    return 0;
}
Вывод напрашивается сам собой - накой чёрт везде лепить std:: если даже без явного указания области видимости ничего страшного не произойдёт даже при использовании другого namespace-а
Код с двоеточиями, нечитабелен, абсолютно такой же по функционалу что и код без std::. И ещё один момент - кто нибудь в MSDN-е встречал код с std:: именно официальный код???Ну хорошо из 100 кодов возможно пара содержит std::, остальная же часть кода дана с using namespace std; как такая которая позволяет сокращать код (прелагаю посчитать на сколько символов увеличивает std:: в каждой строчке длинну кода).
Реально как инкубатор: кто-то написал std:: и сказал "да будет так, так ведь правильно" и всё - поголовно теперь идёт использование данной конструкции
Миниатюры
Информация о вызванной перегрузке функции  
1
 Аватар для soon
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
06.04.2012, 22:17
-=ЮрА=-, холиварите? Не раз ведь уже такое обсуждалось.
0
06.04.2012, 22:30

Не по теме:

soon, с кем я холиворю?
Если есть желание что-то обсудить то сюда
https://www.cyberforum.ru/blogs/34326/blog275.html

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.04.2012, 22:30
Помогаю со студенческими работами здесь

Смоделировать разрушение программы при перегрузке функции
Привет всем. Задали придумать такую перегрузку функции, которая бы вызывала падение программы. Только вот на ум ничего не лезет. Все...

Ошибка при перегрузке функции, также из-за этого сломана void twoo
#include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;string&gt; #include &lt;ctime&gt; //заголовочные файлы using namespace std; ...

Не работает Textbox.Text = "text" в вызванной функции из Handler'a
Установил AddHandler webcontrol.WebView.BeforeRequestLoad, AddressOf BeforeRequestLoad, когда он срабатывает, я меняю значение Textbox.Text...

Взаимодействие с вызванной программой
Доброго времени суток. Есть потребность реализовать автологин по telnet на сетевое оборудование, каждый раз вводить учетные данные для...

Вернуть данные из вызванной формы в исходную
Доброго времени суток. Только начинаю разрабатывать приложения под Lotus Notes/Domino. Есть такая задача: Есть форма для добавления...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru