I have a problem when I try to pass a string to a class. In short, in the main program I'm going to read this string and move on to the class:
cout << "----- Vamos as opcoes! -----" << endl;
cout << "(1) - Adicionar um funcionario" << endl;
.
.
.
cin >> opcao;
switch(opcao){
case 1: //Adicionar um funcionario
Funcionario funcionario_novo;
empresa1.adicionaFuncionario(funcionario_novo);
}
I have a class called Official, which contains his name, salary, and date of admission.
void
Empresa::adicionaFuncionario(Funcionario funcionario_novo){
m_totalFuncionarios++;
string _nome_, _data_;
float _salario_;
cout << "Nome: " << endl;
getline(cin,_nome_);
funcionario_novo.setNome(_nome_);
cout << "Salario: " << endl;
cin >> _salario_;
funcionario_novo.setSalario(_salario_);
cout << "Data de admissao: " << endl;
getline(cin,_data_);
funcionario_novo.setData(_data_);
m_funcionarios[m_totalFuncionarios] = funcionario_novo; //Guardo meu funcionário novo no vetor
}
When I run, it works up to m_totalFuncionarios++;
, but does not pass those strings to the employee.
void
Funcionario::setNome(const string nome_){
m_nome = nome_;
}
void
Funcionario::setSalario(float salario_){
m_salario = salario_;
}
You should save, but do not save.
My question is: what would be the best way to pass this string to my class?