c++ cout 和 cin 不编译

c++ cout and cin doesn't compiles

我正在尝试使用 visual studio 编写非常基本的 C++ 代码。 由于 'cin' 和 'cout',代码无法编译。 这是代码:

#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;
}

编译错误为:

"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 header,因此您应该包含它:

#include <string>