c++类的错误,这个错误代码有办法解决一下吗?


#include<iostream>
using namespace std;
class jisuanqi{
    private:float a,b;char pb;
    public:
        void fun();
        jisuanqi(float x,float y,char zb)
        {a=x;b=y;pb=zb;}
}; 
void jisuanqi::fun()
{
    switch(pb)
        {    case'+':cout<<a+b<<endl;;break;
            case'-':cout<<a-b<<endl;;break;
            case'*':cout<<a*b<<endl;;break;
            case'/':cout<<a/b<<endl;;break;
            default:cout<<"你输入的运算符错误"<<endl; 
            }
}
int main()
{
    float m,n;char p;
    cout<<"请输入两个值"<<m<<n;
    cin>>m>>n;
    cout<<"请输入运算符"<<p;
    cin>>p;
    jisuanqi A(m,n,p);
     A.fun();
    return 0;
}

img

修改如下,供参考:

#include<iostream>
using namespace std;
class jisuanqi {
private:float a, b; char pb;
public:
    void fun();
    jisuanqi(float x, float y, char zb)
    {
        a = x; b = y; pb = zb;
    }
};
void jisuanqi::fun()
{
    switch (pb)
    {
    case'+':cout << a + b << endl;; break;
    case'-':cout << a - b << endl;; break;
    case'*':cout << a * b << endl;; break;
    case'/':b == 0 ? cout << "除数不能为0" << endl : cout << a / b << endl; break; // 修改
    default:cout << "你输入的运算符错误" << endl;
    }
}
int main()
{
    float m, n; char p;
    cout << "请输入两个值:";      //<< m << n;修改
    cin >> m >> n;
    cout << "请输入运算符:";       //<< p;  修改
    cin >> p;
    jisuanqi A(m, n, p);
    A.fun();
    return 0;
}

把主函数第四行后面的输出m和n去掉