为什么我不断收到错误消息,例如'未定义的错误'?

时间:2018-02-20 01:04:27

标签: c++ class

我尝试使用下面的代码计算BMI,并且我不断收到错误消息,例如未定义的错误并返回1退出状态。我已经在某个地方读到了我需要包含.h的文件,所以我添加了<windows.h>,但它仍然无效。

我不熟悉课程。

我该如何解决?

#include <iostream>
using namespace std;

class BMI{
public:
    void setWeight (int);
    void setHeight (int);
    int getWeight ();
    int getHeight ();
    int calBMI (int,int);
    void printBMI (int);
    BMI ();
    ~BMI ();
private:
    double weight;
    double height;
    double bmi;
};

int BMI::getWeight(){
    return weight;
}

int BMI::getHeight(){
return height;
}

void BMI::setWeight(int w){
    weight = w;
} 

void BMI::setHeight(int h){
    height = h;
}

int BMI::calBMI(int w, int h){
    return w/(h*h);
}

void BMI::printBMI(int ans){
    cout<<ans<<endl;
}

BMI::BMI(){
    weight = 0;
    height = 0;
}

int main (){
    int w, h, ans;
    BMI body;
    cout<<"\n\tPlease insert your weight = ";
    cin>>w;
    cout<<endl;
    cout<<"\n\tPlease insert your height = ";
    cin>>h;
    body.setWeight(w); body.setHeight(h);
    ans = body.calBMI(w,h);
    body.printBMI(ans);
    system ("pause");
    return 0;
}

1 个答案:

答案 0 :(得分:0)

您声明了析构函数~BMI(),但没有定义它。只需删除声明即可。你不需要析构函数。没有什么可以破坏的。

还有其他问题。阅读所有警告并采取行动。