简体   繁体   English

c ++ cout和cin不编译

[英]c++ cout and cin doesn't compiles

I'm trying to write a very basic c++ code using visual studio. 我正在尝试使用visual studio编写一个非常基本的c ++代码。 the code doesn't compile because of the 'cin' and 'cout'. 由于'cin'和'cout',代码无法编译。 here is the code: 这是代码:

#include <iostream>

using namespace std;

class employer
{
private:
    string id;
    float work_hours, over_time_hours,hourly_salary,salary;
public:
    employer()
    {
        id="123456789";
        hourly_salary=25;
        work_hours=0;
        over_time_hours=0;
        salary=0;
    }
    void get_employer()
    {
        cin >> id >> salary >> work_hours >> over_time_hours;
    }
    void print_employer()
    {
        cout << "I.D. #" << id << "\n and his hourly salary is: " << salary << '\n';
    }
        void salary_calculation()
    {
        salary= (work_hours*hourly_salary + 1.5*over_time_hours*hourly_salary);
    }

};
int main(){
    employer employer1;
    employer1.get_employer();
    employer1.salary_calculation();
    employer1.print_employer();
    return 0;
}

and the compilation error is: 编译错误是:

"1>ex1.cpp(21): error C2678: binary '>>' : no operator found which takes a left-hand operand of type 'std::istream' (or there is no acceptable conversion)"

operator>> string重载位于string标题中,因此您应该包含它:

#include <string>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM