30/09/2018, 22:09
Lỗi chạy đoạn code trên Visual được nhưng chuyển sang Dev C++ lại chạy bị lỗi
Đây là một bài nhỏ về buổi đầu làm quen với Class của mình.
Và vấn đề mình gặp phải mình nói phía dưới đoạn Code này.
#include<iostream>
#include<cstring>
#include<iomanip>
#include<cstdlib>
using namespace std;
class SinhVien{
public:
void setMaSV(string msv);
string getMaSV;
void setTenSV(string tsv);
string getTenSV;
void setKhoa(string khoa);
string getKhoa;
void setLop(string lop);
string getLop;
SinhVien();
SinhVien(string msv, string tsv,string khoa, string lop);
void Nhap();
void Xuat();
private:
string TenSV;
string MaSV;
string Khoa;
string Lop;
};
//Viet chuong trinh.
SinhVien arrSV[100];
int index = 0; //Luu tru so SV co trong mang.
int main(){
int luachon;
while(true){
do{
system("CLS");
cout<<"1. Them moi sinh vien. "<<endl;
cout<<"2. Sua thong tin sinh vien. "<<endl;
cout<<"3. Xoa sinh vien theo ma. "<<endl;
cout<<"4. Liet ke sinh vien theo lop. "<<endl;
cout<<"5. Tim kiem sinh vien theo ma. "<<endl;
cout<<"6. Xuat toan bo sinh vien. "<<endl;
cout<<"7. Ket thuc."<<endl;
cout<<"Ban chon (1 - 7): "; cin>>luachon;
} while(luachon<1||luachon>7);
switch(luachon)
{
case 1:
int n;
cout<<"Nhap so SV can them: "; cin>>n;
for(int i=0; i<n; i++){
SinhVien tmpSV;
tmpSV.Nhap();
arrSV[index] = tmpSV;
index ++; //Tang so luong SV len.
}
cout<<"
Nhap phim bat ky de quay lai menu";
system("PAUSE>NULL"); //DUNG MAN HINH.
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
break;
case 6:
cout<<"
Thong tin toan bo sinh vien: "<<endl;
cout<<setw(10)<<"MaSV: "<<setw(20)<<"TenSV: "<<setw(20)<<"Khoa: "<<setw(20)<<"Lop: "<<endl;
for(int i=0; i <index; i++){
arrSV[i].Xuat();
}
cout<<"
Nhap phim bat ky de quay lai menu";
system("PAUSE>NULL");
break;
case 7:
exit(1);
}
}
return 0;
}
//Dinh nghia ham tao.
SinhVien::SinhVien(){
MaSV = " ";
TenSV = " ";
Khoa = " ";
Lop = " ";
}
SinhVien::SinhVien(string msv,string tsv,string khoa,string lop){
MaSV = msv;
TenSV = tsv;
Khoa = khoa;
Lop = lop;
}
void SinhVien::setMaSV(string msv){
MaSV = msv;
}
string SinhVien::getMaSV(){
return MaSV();
}
void SinhVien::setTenSV(string tsv){
TenSV = tsv;
}
string SinhVien::getTenSV(){
return TenSV();
}
void SinhVien::setKhoa(string khoa){
Khoa = khoa;
}
string SinhVien::getKhoa(){
return Khoa();
}
void SinhVien::setLop(string lop){
Lop = lop;
}
string SinhVien::getLop(){
return Lop();
}
void SinhVien::Nhap(){
cin.ignore(); //XOA BO NHO DEM.
cout<<"
Moi ban nhap Ma SV: ";
getline(cin,MaSV);
cout<<"
Moi ban nhap TEN SV: ";
getline(cin,TenSV);
cout<<"
Moi ban nhap Khoa: ";
getline(cin,Khoa);
cout<<"
Moi ban nhap lop: ";
getline(cin,Lop);
}
void SinhVien::Xuat(){
cout<<setw(10)<<MaSV<<setw(20)<<TenSV<<setw(20)<<Khoa<<setw(20)<<Lop<<endl;
//Su dung setw(do_rong) ->> Khai bao thu vien iomanip.
}
Bài này tới đây mình chạy bên Visual StudiO thì mình chạy được. Không bị lỗi gì cả.
Nhưng khi mình cho nó chạy bên Dev C++ 5.8.1 thì lại bị lỗi ở các câu lệnh tương tự như câu lệnh sau (anh/chị tải về chạy trên Dev C++ thì sẽ rõ hơn đó ạ ) :
SinhVien::getMaSV(){
return MaSV;
}
Mình loay hoay mãi mà không sửa được lỗi
Mong anh/chị và các bạn giúp đỡ mình với. Xin cảm ơn.
Bài liên quan
Câu hỏi này không rõ ràng.
Tiêu đề không nói được lỗi là gì, lỗi class là lỗi gì?
Sẽ hiển thị cho mọi người xem và giúp nếu câu hỏi được sửa lại.
Topic đang bị ẩn.
Lúc up bài em hơi vội, Mong anh giúp đỡ.
Đã hiện lại topic
Em cảm ơn. Lần sau em cẩn thận hơn.
Ai sửa giúp mình với ạ !
Code của bạn sai thì sao mà chạy được, ở trên các getXXX của bản là biến chứ có phải hàm đâu mà xuống dưới bạn định nghĩa như hàm được
Hình như lầm lẫn giữa getlop với setlop?
**MÌNH TÌM ĐƯỢC LỖI “NGU” CỦA MÌNH RỒI. **
CẢM ƠN CÁC BẠN ĐÃ GIÚP