Ficheiros c++

BALX

Membro
Boas,

Estou a fazer um projeto relacionado com comercio de imoveis e tendo um menu para escrita/leitura de funcionarios e clientes...
Fiz a função de read e write, mas acontece que ao adicionar um novo funcionario e depois ao pedir para ver id e nome dos funcionarios apenas retorna o ultimo adicionado e nao todos os que ja foram inseridos...
Também estou com dúvida na remoçao de um funcionario , sendo necessário puxar para cima as restantes linhas decrementando o id dos funcionarios..
Quem me conseguir ajudar, agradecia

Aqui estao as funçoes!!

void readFuncionario(){
ifstream input;
int codigo;
string nome;
vector<Funcionario *>f1;
input.open("funcionarios.txt");

if (!input) {
cout << "Erro ao abrir o ficheiro";
exit(1);
}

while(input>>codigo>>nome) {
cout << "Codigo: " << codigo << endl;
cout << "Nome: " << nome << endl;

input.clear();}


input.close();
}




void writeFuncionario(){
ofstream output;
int c = 0;
int codigo;
string nome;
vector<Funcionario *> f1;




// do{
cout << "Indique o nome do Funcionario: ";
getline(cin, nome);
cout << "Leu o nome: " << nome << endl;
// if(nome.size() > 19)
// cout << "tamano maximo do nome e 19 caracteres" << endl;
// }while(nome.size() > 19);




Funcionario *funcionario = new Funcionario (nome);
codigo = funcionario->getCodigo();
f1.push_back(funcionario);

output.open ("funcionarios.txt");
for (unsigned int i = 0; i < f1.size(); ++i)
output << f1->imprime();

output.clear();


output.close();
}

 
Última edição:
Back
Topo