什么是" [错误]预期不合格-Id之前'如果'"意思是在这段代码中

时间:2017-02-23 19:44:21

标签: c++

我正在尝试将储蓄作为学校项目的一个例子,我真的不知道自己做错了什么当然在函数内部添加if语句是行不通的,因为它无法调用自己

    #include <iostream>
    using namespace std;
    int main(){
 struct worker{
    int salary;
    float taxperc;
    int bills;
    int home_needs;
    int bonus;
    bool measure;
    void saving(){
        float tax = (salary/100)*taxperc;
        cout << salary - tax -bills-home_needs  << endl;
    }
    if (measure)
        saving();
};
worker me = {50000, 2.5, 150, 3000, 0, true};
}

1 个答案:

答案 0 :(得分:0)

不确定您要实现的目标,但您不能在if范围级别拥有struct。直接在struct { ... }中,您只能拥有:

  • 会员价值(字段)
  • 会员职能

而不是常规代码,语句等。您何时会期望执行此类代码?

您的选择是:

  • if (measure) { saving(); }放入另一个成员函数
  • 在您的saving()函数中从结构外部调用main,例如me.saving()

P.S。出于可读性考虑,我强烈建议您也要对代码进行缩进。