我从使用fstream的文件读取错误,第37行(fstream grabpass(“passwords.txt”);),但似乎没有做错什么.
#include <iostream> #include <conio.h> #include <string> using namespace std; int i,passcount,asterisks; char replace,value,newchar; string username,password,storedUsername,storedPassword; int login(string username,string password) { if (username=="test"/*storedUsername*/) { if (password==storedPassword) cout<<"Win!"; else cout<<"Username correct,password incorrect."; } else cout<<"Lose. Wrong username and password."; } int main() { cout<<"Username: "; cin>>username; cout<<"Password: "; do { newchar = getch(); if (newchar==13)break; for (passcount>0;asterisks==passcount;asterisks++)cout<<"*"; password = password + newchar; passcount++; } while (passcount!=10); fstream grabpass("passwords.txt"); getline(grabpass,storedPassword); grabpass.close(); login(username,password); return 0; }
解决方法
您需要添加#include< fstream> ;.在猜测中,< iostream>可能包括一个fstream的声明(最喜欢通过< iosfwd>),而不是一个定义,因此当您尝试定义该类型的对象时,它具有不完整的类型.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。