4
respostas

Chamar uma variavel como parametro

Olá! Estava tentando aprimorar o código feito em curso e fiquei com uma dúvida. Existe alguma forma de ao criar uma instância de um objeto, consigo passar uma variável já pronta? Por exemplo:

int main () { string nome; cin >> nome; getline(cin, nome);

Conta umaConta (nome, "numerodocpf", "senha"); }

onde Conta seria uma classe do tipo: Conta (std::string nome, std::string cpf, std::string senha )

4 respostas

Não entendi bem sua dúvida, Laura. Você quer saber se é possível passar uma variável por parâmetro? É sim perfeitamente possível e normalmente é assim mesmo que é feito.

Deixa eu tentar explicar melhor. Por exemplo, no curso criamos a classe Titular, certo? Vamos supor que para criar um objetos teríamos que inserir a seguinte linha na main.cpp: Titular cliente("Nome", "123.456.789.-10")

A minha dúvida seria se existe alguma forma de no nosso arquivo main.cpp, pedirmos para o usuário passar os parâmetros da classe. Como o nome ("Nome") e o cpf ("123.456.789.-10").

Por exemplo, eu tentei receber duas variáveis:

string variavelNome, variavelCpf; cin >> variavelNome; cin >> variavelCpf;

E ai tentei fazer o seguinte:

Titular cliente (variavelNome, variavelCpf);

Mas não deu certo.

Que erro aconteceu, Laura? Não me lembro exatamente do código do treinamento, mas teoricamente isso deve funcionar.

Olá, não entendi muito bem, mas creio que vc esteja tentando preencher dentro da main() os dados de um objeto do tipo conta com o cin >> certo? vê se isso te ajuda.

#include <iostream>
#include <string>
#include "Conta.hpp"

using namespace std;

int main(){
//levando em consideração que os atributos da struct/Class Conta estejam separados em um arquivo externo .hpp //
    Conta umaConta;
    Conta conta2;

    cout << "Digite nome e em seguida o cpf e depois o saldo inicial:  " << endl;
    cin >> umaConta.nome >> umaConta.cpfTitular >> umaConta.saldo;
    cout << endl;

    cout << "Digite nome e em seguida o cpf e depois o saldo inicial da 2° Conta:  " << endl;
    cin >> conta2.nome >> conta2.cpfTitular >> conta2.saldo;
    cout << endl;

    cout << "Nome: " <<  umaConta.nome << " CPF: " << umaConta.cpfTitular << " Saldo: " << umaConta.saldo <<endl;
    cout << "Nome: " << conta2.nome << " CPF: " << conta2.cpfTitular << " Saldo: " << conta2.saldo << endl;

    return 0;
}

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software