私は図書館管理システムの学校プロジェクトを作成するプログラムを探していました。私はインターネット上で良いものを見つけました。コードはここで見ることができます:https://codereview.stackexchange.com/q/68713/153350コードレビュースタック交換。私はそれについて私のプロジェクトを作るつもりです。C++で学校図書館管理プログラムの2つのエラーを修正しました
私は上記のコードを実行しましたが、3つのエラーが表示されます。一つは、私が修正することができた変数の複数の宣言に関するものです。
しかし、私は他の2つのエラーについて何をすべきか分かりません。 どちらも関数の本体内のコードの次の行、ボイドwrite_student()で発生する:最初のエラーは言う
f.write((char*)&st, sizeof(student));
:
Undefined symbol 'st'
他方は言う:
Could not find a match for 'ostream::write(undefined, unsigned int)'
誰かが何が間違っているのか、そのエラーをどのように修正できるのかについてのヘルプを提供できますか? ありがとうございます。あなたはf.write
へ&st
代わりの&s
を渡す
void write_student(){
char ch;
f.open("student.dat", ios::out|ios::app);
do{
s.create_student();
f.write((char*)&st, sizeof(student));
cout<<"\n\nDo you want to add more students...(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
f.close();
}
:
2番目のエラーは、最初のエラーが原因です。 'st'が解決するとすぐに消えるので、私の最初の提案は最初のものに焦点を当てることです。 –
'st'はどこにあるのですか? 'st'は明らかに' student'型のインスタンスでなければなりません。 – ovanes
それは 'st'ではありません...' s'、man ... –