01/10/2018, 17:13
Tại sao hàm tạo có lỗi kiểu trả về không hợp lệ?
#include<bits/stdc++.h>
#include<iomanip>
using namespace std;
class SinhVien{
string ID, grade, khoa, name;
public:
SinhVien();
SinhVien( string , string , string , string );
void setID( string );
void setGrade( string );
void setName( string );
void setKhoa( string );
string getID();
string getName();
string getGrade();
string getKhoa();
void display();
~SinhVien();
};
void SinhVien::SinhVien( string ID, string name, string lop, string khoa){
setName( name );
setID( ID );
setGrade( grade );
setKhoa( khoa );
}
void SinhVien::setName( string name){
this->name = name;
}
void SinhVien::setID( string ID){
this->ID = ID;
}
void SinhVien::setGrade( string grade){
this->grade = grade;
}
void SinhVien::setKhoa( string khoa){
this->khoa = khoa;
}
string SinhVien::getName(){
return this->name;
}
string SinhVien::getGrade(){
return this->grade;
}
string SinhVien::getID(){
return this->ID;
}
string SinhVien::getKhoa(){
return this->khoa;
}
void SinhVien::display(){
cout<< left << setw(30) << this->name << setw(15) << this->ID << setw(15) << this->grade << setw(15) << this->khoa << endl;
}
void nhapSV( SinhVien a){
string name,id,grade,khoa;
cin.ignore(1);
cout << "
Nhap ten:" ; getline(cin,name);
cout << "
Nhap ID:" ; getline(cin,id);
cout << "
Nhap lop:" ; getline(cin,grade);
cout << "
Nhap khoa:" ; getline(cin,khoa);
a.setGrade(grade);
a.setID(id);
a.setKhoa(khoa);
a.setName(name);
}
int main(){
SinhVien a;
nhapSV(a);
a.display();
return 0;
}
Bài liên quan
Sao không thấy
new SinhVien()
ở chỗ nào hết nhỉ?Có thể là
SinhVien a = new SinhVien();
Khai báo bình thường vẫn được chứ không nhất thiết phải khai báo kiểu con trỏ.
Nhầm box rồi bạn ei