在 C++ 中调用重载函数并从函数原型中检索数据

问题描述

我什至可能没有正确地问这个问题,但无论如何。在不久的将来,我可能还会有更多问题。这里的重点是使用重载函数(本示例中不包括双输入和空输入)。但我不确定为什么我的字符输入重载函数没有被执行。我知道我遗漏了一些东西,可能是传值,但我试图对它进行头脑风暴,但几乎无处可去。 顺便说一句,这与完成的代码相差甚远。这只是为了让输入的字符版本正确执行,同时保持作为重载函数

#include <iostream>
#include <iomanip>
#include <string>
#include <cmath>

using namespace std;

char input(char letter,string prompt_text = "Enter your letter (a to z): ",string error_message_text = "Error! ")
{
    while (true)
    {
        cout << prompt_text;
        char letter{};
        cin >> setw(1) >> letter;
        tolower(letter);

        if (not(isalpha(letter)))
        {
            cout << error_message_text;
            cin.clear();
            cin.ignore(INT_MAX,'\n');
        }
        else
        {
            return letter;
        }
    }
};


double input(double min_number=-100,double max_number=100,string prompt_text="Enter your number (-100 to 100): ",string error_message_text="Error! ")
{
cout<<prompt_text;
double number{};
cin>>number;
if (isalpha(number))
{
 cout<<error_message_text;
}
return number;
}; 
// for getting a number

void input(double x,double y,string prompt_text="Enter your point: ")
{
cout<<prompt_text;
double point{};
cin>>point;

}; 

int main()
{
    input();
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)