Construtor parametrizado em C++: trabalhando e exemplos

Publicados: 2021-05-27

Índice

O que é Construtor?

Um construtor é uma função membro de uma classe que é usada para inicializar objetos em uma classe. Em C++ , quando um objeto que é a instância da classe é criado, o construtor é chamado automaticamente. Assim, um construtor é uma função membro especial da classe.

O que é um Construtor Parametrizado?

Argumentos podem ser passados ​​para construtores. Quando um objeto é criado, esses argumentos ajudam a inicializar um objeto. Para criar um construtor parametrizado em C++ , podemos adicionar parâmetros a uma função como ela pode ser adicionada a qualquer outra função. Quando o corpo do construtor é definido, os parâmetros são usados ​​para inicializar o objeto.

Sintaxe do construtor parametrizado em C++

class name_of_class{

Especificador de acesso (Público/protegido/privado):

Variáveis ​​de membro

Funções de membro

público:

name_of_class(variables){ //Código para construtor

}

// outras funções e variáveis

}

A sintaxe incluía name_of_class, seguido por um especificador de acesso que contém funções de membro e variáveis ​​de membro. Tudo isso está incluído no código do construtor, o que significa que pode ser chamado no corpo do construtor.

Leia também: Projetos de código aberto para C++

Exemplo de construtor parametrizado em C++

#include <iostream>

usando o namespace std;

Exemplo de classe

{

privado:

int a, b;

público:

// Construtor parametrizado

Exemplo(int a1, int b1)

{

a = a1;

b = b1;

}

int getA()

{

retornar um;

}

int getB()

{

retornar b;

}

};

int main()

{

// Chamando o construtor

Exemplo e1(5, 10);

cout << “e1.a = ” << e1.getA() << “, e1.b = ” << e1.getB();

retornar 0;

}

Saída

Explicação: As variáveis ​​privadas aeb são declaradas na classe Example. Um construtor parametrizado é declarado usando a função Example. Inclui dois métodos getA() e getB(). Na classe principal, o construtor é chamado e os valores de acesso do construtor são atribuídos.

Como funciona o construtor parametrizado em C++?

Um objeto é iniciado, que contém valores ou detalhes e parâmetros que o objeto processará ou conterá sempre que um construtor parametrizado em C++ for definido. Em seguida, torna-se possível que os argumentos sejam passados ​​para esse objeto. O procedimento é muito semelhante a passar um valor para uma função. Ele também possui uma semelhança com a passagem de valores parametrizados para os objetos.

Os objetos que são definidos no corpo do construtor são inicializados usando os parâmetros. Os valores devem ser passados ​​como argumentos para a função construtora sempre que um construtor parametrizado é declarado. Esses construtores podem ser chamados explicitamente ou implicitamente. A forma convencional de declaração de objetos não funciona.

Nota: Tipos de chamada

  1. Chamada explícita - Exemplo e1= Exemplo(0,10)
  2. Chamada implícita - Exemplo e1(0,10)

Checkout: Ideias de projeto em C++ para iniciantes

Qual é o uso do construtor parametrizado em C++?

Os usos de construtores parametrizados são os seguintes:

  • Sobrecarga do construtor
  • Usado para atribuir valores diferentes aos vários elementos de dados de objetos diferentes quando eles são inicializados/criados

Outro exemplo:

1. Programa para calcular a área de um retângulo

#include <iostream>

usando o namespace std;

// declarando uma classe

retângulo de classe {

privado:

comprimento duplo;

largura dupla;

público:

// criando construtor parametrizado

retângulo(double len, double brt) {

// inicializa as variáveis ​​privadas

comprimento = len;

largura = brt;

}

double calcularArea() {

retorno comprimento * largura;

}

};

int main(){

// criando objetos e inicializando membros de dados

retângulo rect1(10, 8,6);

retângulo rect2(8,5, 6);

cout << “Área do retângulo 1: ” << rect1.calculateArea() << endl;

cout << “Área do retângulo 2: ” << rect2.calculateArea() << endl;

retornar 0;

}

Saída

Explicação: Neste exemplo, criamos um construtor parametrizado retângulo() com dois parâmetros: double len e double bdt. Esses parâmetros contêm valores que são usados ​​para inicializar o comprimento e a largura das variáveis ​​de membro. Quando criamos um objeto da classe Rectangle, passamos os valores das variáveis ​​membro como argumentos. Podemos calcular a área com a função calculateArea() quando as variáveis ​​de membro são inicializadas.

1. Exibição das notas dos alunos

#include <iostream>

usando o namespace std;

turma Aluno {

público:

int std_id; // membro de dados

string std_name;//também variável de instância

float std_marks;

Aluno(int i, string a, float b)

{

std_id = i;

nome_padrão = a;

std_marks = b;

}

void display()

{

cout<<std_id<<” “<<std_name:<<” “<<std_marks <<endl;

}

};

int main(void) {

Aluno s1 = Aluno(101, “Sônia”, 89); //criando um objeto de aluno

Aluno s2=Aluno(102, “Nakul”, 59);

s1.display();

s2.display(); retornar 0;

}

Saída

Explicação: id, name e marks são membros de dados (também variáveis ​​de instância). Um aluno é um construtor parametrizado e seus objetos são criados na classe principal.

Aprenda cursos de desenvolvimento de software online das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.

Conclusão

Construtores são apenas tipos especiais de métodos nos quais podemos passar valores. Se não passarmos valores para o construtor, o objeto final terá algum valor padrão. [1] [MOU2] Os objetos guardam os métodos e valores das variáveis ​​membro que fazem parte da classe principal. Esses valores são finalmente passados ​​por meio de construtores. Um construtor parametrizado em C++ tem a vantagem de atribuir valores diferentes a objetos diferentes e pode haver sobrecarga.

Agora que você conhece os construtores parametrizados em C++, se quiser se aprofundar e progredir na carreira de programação, explore os cursos da upGrad, a maior empresa de ensino superior online da Índia. Você deve verificar nosso Programa de Desenvolvimento de Software Full-Stack .

O que é um construtor?

Construtor é um método especial em uma classe que tem o mesmo nome da classe. É especial porque esse método é chamado automaticamente quando uma classe é criada (instanciada). Se um construtor não tem argumentos, então a classe está sendo instanciada com valores vazios. Construtor executa tarefas de inicialização e inicializa as variáveis ​​de instância da classe. O objetivo principal do construtor é estabelecer os valores das propriedades do objeto. Também é usado para realizar qualquer operação que precise ser executada apenas uma vez. Construtor geralmente é declarado como um estático público na classe e o objeto é criado usando este construtor.

Quantos construtores podem existir em uma classe?

Se estamos falando de C++, o número de construtores é ilimitado. No entanto, pode haver outros limites devido a outros motivos, como a limitação de memória da sua máquina, a complexidade da classe, etc. Portanto, o número de construtores é ilimitado, mas o número de parâmetros do construtor não. Pode haver quantos construtores em uma classe você quiser. Mas o construtor padrão é obrigatório. Qualquer classe que não tenha construtor padrão é uma classe abstrata. A classe abstrata não pode ser instanciada.

O que é programação orientada a objetos?

A programação orientada a objetos é um paradigma de programação que trata 'objetos' como os blocos de construção fundamentais de um programa ou sistema de computador. Objetos são entidades de software que podem conter dados, na forma de campos, geralmente conhecidos como atributos; e código, na forma de procedimentos, geralmente conhecidos como métodos. A programação orientada a objetos se concentra nos dados e nas regras que os cercam, em vez de se concentrar na lógica processual ou no fluxo de controle, como era comum nas primeiras linguagens de programação. A POO lida com os dados como um todo e não como um conjunto de elementos individuais.