Mình có soạn 1 đoạn code đơn giản để demo câu hỏi :
class NV{
protected:
string HoTen;
int NamSinh;
long Luong;
public:
void Nhap(){
cout << "Ho ten Nhan Vien : "; getline(cin, HoTen);
cout << "Nam sinh : "; cin >> NamSinh; };};
class NVVP :public NV{
public:
void Nhap() {
NV::Nhap(); };
};
class NVSX :public NV{
public:
void Nhap() {
NV::Nhap();};
};
int _tmain(int argc, _TCHAR* argv[]){
NVVP a;
NVSX b;
a.Nhap();
b.Nhap();
system("pause");
return 0;}
Lúc run chương trình tới đối tượng b gọi hàm Nhap(),thì mặc định HoTen="",tức là câu lệnh getline(cin,string) không được gọi,vậy mình có thể sửa như thế nào để hàm Nhap() có thể dừng lại đọc các ký tự nhập vào từ bàn phím ?