0
I’m doing a code to create password and user, of course saving them. But in this part of the program it does not work, it gives error.
void criar_senha(){
cout << "Digite a senha usando letras maiúsculas\n";
string nova_senha;
cin >> nova_senha;
vector<string> lista_senha = le_arquivo_login();
lista_senha.push_back(nova_senha);
salva_arquivo_senha(lista_senha);
Specifically it is giving error in the 5 line, of the vector and I did not understand the error
Error:
error: conversation from 'void' to non-scalar type 'std::vector<std::_cxxll::basic::string<char> >' requested;
I know it’s really messy, I’m a beginner and I haven’t finished codico, I need it working to continue.
Whole Code(Yes, you have 2 of the above Code with the same error)
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
const string cadastro_usuario = "teste_usuario";
const string cadastro_senha = "teste_senha";
string usuario;
string senha;
char tem_conta;
void apresentacao(){
cout << "*************************************\n";
cout << "** Bem-vindos ao criador de conta! **\n";
cout << "*************************************\n";
cout << endl << endl;
}
void le_arquivo_senha(){
ifstream arquivo_senha;
arquivo_senha.open("senha.txt");
int quantidade;
arquivo_senha >> quantidade;
}
void le_arquivo_login(){
ifstream arquivo_login;
arquivo_login.open("login.txt");
int quantidade;
arquivo_login >> quantidade;
}
void salva_arquivo_senha(vector<string> nova_lista){
ofstream arquivo_senha;
arquivo_senha.open("senha.txt");
if(arquivo_senha.is_open()){
arquivo_senha << nova_lista.size() << endl;
for(string palavra : nova_lista){
arquivo_senha << palavra << endl;
}
arquivo_senha.close();
}else{
cout << "Não foi possível acessar o banco de palavras.\n";
exit(0);
}}
void salva_arquivo_login(vector<string> nova_lista){
ofstream arquivo_login;
arquivo_login.open("login.txt");
if(arquivo_login.is_open()){
arquivo_login << nova_lista.size() << endl;
for(string palavra : nova_lista){
arquivo_login << palavra << endl;
}
arquivo_login.close();
}else{
cout << "Não foi possível acessar o banco de palavras.\n";
exit(0);
}}
void criar_login(){
cout << "Digite o login usando letras maiúsculas\n";
string novo_login;
cin >> novo_login;
vector<string> lista_login = le_arquivo_login();
lista_login.push_back(novo_login);
salva_arquivo_login(lista_login);
}
void criar_senha(){
cout << "Digite a senha usando letras maiúsculas\n";
string nova_senha;
cin >> nova_senha;
vector<string> lista_senha = le_arquivo_login();
lista_senha.push_back(nova_senha);
salva_arquivo_senha(lista_senha);
}
void login(){
cout << "Usuario : ";
cin >> usuario;
cout << "Senha : ";
cin >> senha;
cout << endl;
}
bool conferida;
void conferir_se_esta_certo(){
if(usuario != cadastro_usuario || senha != cadastro_senha){
cout << "O usuario ou a senha está(ão) errado(s).\n";
conferida = false;
}else{
cout << "OK, você acertou! Entre-\n";
conferida = true;
}}
int main()
{
setlocale(LC_ALL,"portuguese");
apresentacao();
cout << "Você já tem uma conta? (S/N)\n";
cin >> tem_conta;
if (tem_conta == 'N'){
criar_login();
criar_senha();
}else{
login();
}
conferir_se_esta_certo();
if(conferida == true){
cout << "Entrar(teste)\n";
}
}
Thank you all very much!!!
Thank you so much Leandro!!! I help A LOT!! I needed this to continue the Code and my walk in learning C++
– Kayrou