// um exemplo de como usar uma struct em C++
#include <iostream>
#include <string>
// declarei todas as variáveis como std::string pq assim fica
// bem mais fácil de validar os dados
struct Funcionario {
std::string codigo; // código do funcionário
std::string nome; // nome do funcionário
std::string endereco; // endereço do funcionário
std::string data_de_nascimento; // data de nascimento do funcionário
std::string data_de_admissao; // data de admissão do funcionário
std::string salario_base; // salário base do functionário
};
int main()
{
// declaramos uma variável do tipo Funcionario
Funcionario novo_funcionario;
// agora podemos acessar os membros da struct Funcionário
// através da variável novo_funcionario e do operador "."
// usamos a função std::getline porque o std::cin para de ler quando
// ele acha um espaço, daí se por exemplo o nome do funcionário fosse
// Max Payne, só Max seria lido na variável nome
std::cout << "Codigo: ";
std::getline(std::cin, novo_funcionario.codigo);
std::cout << "Nome: ";
std::getline(std::cin, novo_funcionario.nome);
std::cout << "Endereco: ";
std::getline(std::cin, novo_funcionario.endereco);
std::cout << "Data de nascimento: ";
std::getline(std::cin, novo_funcionario.data_de_nascimento);
std::cout << "Data de admissao: ";
std::getline(std::cin, novo_funcionario.data_de_admissao);
std::cout << "Salario base: ";
std::getline(std::cin, novo_funcionario.salario_base);
// aqui estão as informações sobre o novo funcionário
std::cout << "\nForam registrados os seguintes dados:\n";
std::cout << "Codigo: " << novo_funcionario.codigo << '\n';
std::cout << "Nome: " << novo_funcionario.nome << '\n';
std::cout << "Endereco: " << novo_funcionario.endereco << '\n';
std::cout << "Data de nascimento: " << novo_funcionario.data_de_nascimento << '\n';
std::cout << "Data de admissao: " << novo_funcionario.data_de_admissao << '\n';
std::cout << "Salario base: " << novo_funcionario.salario_base << '\n';
// isso "conserta" o std::cin para a próxima expressão poder funcionar
std::cin.sync();
// isso faz o console ficar aberto depois que o programa acaba de executar
std::cin.get();
return (0);
}