我不明白什么叫重载就不需要选择语句了,第一个比大小,第二个排序,第三个计算面积

我不明白什么叫重载就不需要选择语句了,第一个比大小,第二个排序,第三个计算面积
那如果eg:我在第三个语句只想直接输出长方形而不用正方形该怎么做


#include<iostream>
using namespace std;
class MinSort {
public:
    MinSort(int x, int y,int p,int q);
    MinSort(int a, int b,int c);
    MinSort(int m, int n);
private:
    int min;
    int temp=0;
};

int main()
{
    int x, y, p, q;
    cout << "请选择需要输入数字的个数(小于等于4大于等于2)" << endl;    
    int a;
    cin >> a;
    cout << "请输入需要比较的数字" << endl;

    if (a == 2) {
        cin >> x >> y;
        MinSort(x, y);
    }
    else if (a == 3) {
        cin >> x >> y >> p;
        MinSort(x, y,p);
    }
    else if (a == 4) {
        cin >> x >> y >> p>>q;
        MinSort(x, y, p,q);
    }
    return 0;

}


MinSort::MinSort(int m, int n) {
    if (m > n)
        min = n;
    else
        min = m;
    cout << "最小值为" << min << endl;

}
MinSort::MinSort(int m, int n,int p) {
    if (m > n)
        min = n;
    else
        min = m;
    if (min > p)
        min = p;
    else
        min = min;
    cout << "最小值为" << min << endl;

}
MinSort::MinSort(int m, int n, int p, int q) {
    if (m > n)
        min = n;
    else
        min = m;
    if (min > p)
        min = p;
    else
        min = min;
    if (min > q)
        min = q;
    else
        min = min;
    cout << "最小值为" << min << endl;

}



#include<iostream>
using namespace std;
    int Sort(int num[10]);
    float Sort(float num[10]);

int main()
{
    int num1[11],x;
    float num2[11],y;
    int i;
    cout << "请选择需要输入数字的类型" << endl;    
    cout << "整数输入1 实数输入2" << endl;
    int a;
    cin >> a;
    cout << "请输入需要排序的数字" << endl;
    if (a == 1) {        
        for (i = 0; i <10; i++)
        {
            cin >> x;
            num1[i] = x;
        }
        Sort(num1);

    }
    else if (a == 2) {
        for (i = 0; i <10; i++)
        {
            cin >> y;
            num2[i] = y;
        }
        Sort(num1);

    }
    return 0;

}
int Sort(int num[10])
{
    int i, j, temp;
    for (i = 0; i < 10; i++) {
        for (j = i;j < 10; j++)
        {
            if (num[j] > num[j + 1])
            {
                temp = num[j];
                num[j] = num[j + 1];
                num[j + 1] = temp;
            }
        }
    }
    for (i = 0, i < 10; i++;)
        cout << num[i]<<" ";
    return 0;
    }

float Sort(float num[10])
{
    int i, j;
     float temp;
    for (i = 0; i < 10; i++) {
        for (j = i; j < 10; j++)
        {
            if (num[j] > num[j + 1])
            {
                temp = num[j];
                num[j] = num[j + 1];
                num[j + 1] = temp;
            }
        }
    }
    for (i = 0, i < 10; i++;)
        cout << num[i] << " ";
    return 0;
}





#include<iostream>
using namespace std;
    int Sort(int *num1);
    float Sort(float *num2);


int _tmain(int argc, _TCHAR* argv[])
{    int num1[11],x;
    float num2[11],y;
    int i;
    cout << "请选择需要输入数字的类型" << endl;    
    cout << "整数输入1 实数输入2" << endl;
    int a;
    cin >> a;
    cout << "请输入需要排序的数字" << endl;
    if (a == 1) {        
        for (i = 0; i <10; i++)
        {
            cin >> x;
            num1[i] = x;
        }
        Sort(num1);

    }
    else if (a == 2) {
        for (i = 0; i <10; i++)
        {
            cin >> y;
            num2[i] = y;
        }
        Sort(num2);

    }
    return 0;
}

int Sort(int *num1)
{
    int i, j, temp;
    for (i = 0; i <10; i++) {
        for (j = 0; j < 9; j++)
        {
            if (num1[j] > num1[j + 1])
            {
                temp = num1[j];
                num1[j] = num1[j + 1];
                num1[j + 1] = temp;
            }
        }
    }
    for (i = 0;i <10; i++)
        cout << num1[i]<<" ";
    return 0;
}

float Sort(float *num2)
{
    int i, j;
     float temp;
    for (i = 0; i < 10; i++) {
        for (j = 0; j < 9; j++)
        {
            if (num2[j] > num2[j + 1])
            {
                temp = num2[j];
                num2[j] = num2[j + 1];
                num2[j + 1] = temp;
            }
        }
    }
    for (i = 0; i < 10; i++)
        cout << num2[i]<<" ";
    return 0;
}
# include <iostream>
using namespace std;
# include <iomanip>
# include <math.h>

void area(double a)
{
    double area = a * a;
    cout << "正方形面积为:" << endl;
    cout <<area << endl;
}

void area(double a, double b)
{
    double area = a * b;
    cout << "长方形面积为:" << endl;
    cout <<  area << endl;
}


int main()
{
    double a, b,c;
    cout << "计算正方形面积(输入边长)" << endl;
    cin >> a;
    area(a);
    cout << "计算长方形面积(输入长和宽)" << endl;
    cin >> b >> c;
    area(b, c);

    return 0;
}

你是说最后一个不需要选择语句了吗,我感觉这几个都没什么区别。你应该是被人带偏了