我试图使用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)"
答案 0 :(得分:7)
operator>>
的 string
重载位于string
标题中,因此您应该将其包含在内:
#include <string>