2016-03-15 117 views
2

我想用visual studio編寫一個非常基本的C++代碼。 由於'cin'和'cout',代碼不能編譯。 這裏是代碼:C++ cout和cin不編譯

#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)" 
+3

是什麼'string'? - 它應該是'std :: string',用於'iostream' – MikeCAT

+1

@mike'使用命名空間std' –

+2

您需要'#include '。 –

回答

7

operator>>重載string位於string頭,所以你應該包括它:

#include <string>