Métodos getters e setters C++

Metodos Getters E Setters C



Uma das linguagens de alto nível mais utilizadas é C++, que nos ajuda em diversas operações e funções. Além disso, oferece diversos arquivos de cabeçalho contendo declarações de funções, podendo criar classes em códigos C++. Esses recursos tornam nosso trabalho mais conveniente. O núcleo do princípio do encapsulamento são getters e setters. Getters tornam os dados privados acessíveis ao público. Eles também podem alterar um pouco o resultado retornado. Os setters permitem alterar uma variável privada. Eles são cruciais porque podem oferecer uma confirmação antes de definir um valor. Vamos aplicar esses getters e setters em nossos códigos C++ aqui.

Exemplo 1:

Usamos os arquivos de cabeçalho aqui para iniciar nosso código, pois eles estão disponíveis para desenvolvimento em C++. Carregamos os arquivos de cabeçalho necessários para executar este código para começar. Os arquivos de cabeçalho “string” e “iostream” estão incluídos neste código. Posteriormente, incluímos o “namespace std” depois disso.







Em seguida, criamos uma classe “Table” aqui e inicializamos uma variável privada chamada “count” com o tipo de dados “int” e armazenamos “15” nela como seu valor. Depois disso, inserimos a palavra-chave “público”. Em seguida, criamos uma função chamada “getCount()”. Seu tipo de dados é “int”. Esta é a função getter aqui. Retornamos esta “contagem” nesta função utilizando a palavra-chave “return”. Em seguida, invocamos a seguinte função “main()” onde criamos o objeto da classe anterior com o nome “T_obj”. Em seguida, chamamos a função “getCount()” com este objeto de classe na instrução “cout” para obter o valor de count e imprimir o resultado aqui.



Código 1:

#incluir

#include

usando espaço para nome padrão ;

aula Mesa

{

privado :
interno contar = quinze ;
público :
interno obterContar ( )
{
retornar contar ;
}
} ;
interno principal ( )
{
Tabela T_obj ;


corte << 'Obtemos aqui os números da tabela que são:' << T_obj. obterContar ( ) ;

}

Saída:

Após a compilação completa e bem-sucedida deste código, obtemos a saída desejada na qual podemos ver que ele obtém o valor da contagem e o exibe aqui que é “15”. É inicializado dentro da classe “privada”.







Exemplo 2:

Os arquivos de cabeçalho “string” e “iostream” necessários para este código estão incluídos aqui. O “namespace std” é então incluído depois disso. A seguir, criamos uma nova instância da classe “MySquareClass”, inicializamos uma variável privada chamada “squareSide” com o tipo de dados “int” e definimos seu valor como “5”. A palavra-chave “public” é então adicionada e uma função chamada “getSquareSide()” com o tipo de dados “int” é desenvolvida.

Aqui, ela é chamada de função “getter”. Dentro disso, “retornamos” o “squareSide”. Então, quando chamamos esta função, ela fornece o valor “squareSide”. Depois disso, colocamos outra função chamada “getSquarePerimeter()”. Aqui, colocamos a fórmula para encontrar o perímetro para que ela retorne o perímetro do quadrado após obter o valor do lado do quadrado e multiplicá-lo por “4”. Também precisamos encontrar a área do quadrado. Para isso, desenvolvemos mais uma função chamada “getSquareArea()” e calculamos a área do quadrado com o auxílio de uma fórmula que multiplica os lados do quadrado. Ele retorna a área do quadrado sempre que o chamamos e obtém o valor do lado do quadrado da variável “squareSide” anterior.



Agora, precisamos chamar essas funções. Invocamos “main()” e então criamos um objeto de “MySquareClass” com o nome “sq_obj1”. Depois disso, chamamos e imprimimos todas as três funções com este objeto de classe separadamente.

Código 2:

#incluir

#include

usando espaço para nome padrão ;

aula MinhaClasseQuadrada

{

privado :

interno lado quadrado = 5 ;
público :
interno getSquareSide ( )
{
retornar lado quadrado ;
}
interno getSquarePerimeter ( )
{
retornar lado quadrado * 4 ;
}
interno getSquareArea ( )
{
retornar lado quadrado * lado quadrado ;
}
} ;
interno principal ( )
{
MinhaSquareClass sq_obj1 ;

corte << 'O lado do quadrado =' <<

sq_obj1. getSquareSide ( ) << fim ;

corte << 'O perímetro do quadrado =' <<

sq_obj1. getSquarePerimeter ( ) << fim ;

corte << 'A área do quadrado =' <<

sq_obj1. getSquareArea ( ) << fim ;

}

Saída:

Primeiro, ele exibe o lado do quadrado, que é “5”, com a ajuda da função “getSquareSide()”. Em seguida, ele imprime o perímetro do quadrado utilizando a função “getSquarePerimeter()” e a área do quadrado usando a função “getSquareArea()”.

Exemplo 3:

Aqui, temos a classe “Driver” na qual colocamos a palavra-chave “private” e declaramos “driverSalary” como o membro privado com o tipo de dados “int”. Depois disso, temos “public” onde criamos uma função “setDriverSalary” e passamos “int d_s” como parâmetro desta função. Esta é a função setter aqui neste código. Agora, atribuímos “d_s” à variável “driverSalary” dentro desta função.

Depois disso, geramos a função getter chamada “getDriverSalary” e retornamos o salário do motorista. Agora, após invocar o “main()”, criamos um objeto da classe que é ”driverObj_1” e definimos o valor do salário do motorista chamando a função “setDriverSalary()” e passando “30000” como seu parâmetro que é o salário do motorista. Em seguida, imprimimos esse salário chamando a função “getDriverSalary()”.

Código 3:

#include

usando espaço para nome padrão ;

aula Motorista {

privado :
interno motoristaSalário ;
público :
vazio definirSalárioMotorista ( interno d_s ) {
motoristaSalário = d_s ;
}
interno getDriverSalário ( ) {
retornar motoristaSalário ;
}
} ;
interno principal ( ) {
Driver driverObj_1 ;
driverObj_1. definirSalárioMotorista ( 30.000 ) ;


corte << 'O salário do motorista é:' << driverObj_1. getDriverSalário ( ) ;

retornar 0 ;

}

Saída:

Aqui definimos o salário do motorista e obtemos seu salário após configurá-lo e exibi-lo na tela de saída.

Exemplo 4:

A classe “Person” é gerada neste código onde declaramos três variáveis ​​“privadas” denominadas “P_name”, “P_city” e “P_language” com o tipo de dados “string”. Depois disso, criamos um construtor “público”. Aqui, colocamos a função “setPersonName()” e colocamos “string newName” como parâmetro da função. Depois disso, atribuímos este “newName” à variável “P_name”. Em seguida, criamos a função “getPersonCity()” e retornamos “P_city”. Da mesma forma, criamos outra função com o nome “setPersonCity()”. Em seguida, passamos “string city” como parâmetro.

A variável “cidade” agora está atribuída à variável “P_cidade”. O ”getPersonLanguage()” é a próxima função aqui que também retorna o “P_linguagem”. Além disso, também definimos a função “setPersonLanguage()” e passamos a ela a string “lang” como parâmetro. O “lang” é então atribuído à variável “P_linguagem”. Depois disso, temos mais duas funções, “lives()” e “speak()”, onde utilizamos a instrução “cout()”.

Após executar o método “main()”, geramos agora um objeto da classe chamado “p_obj1”. Aqui, definimos o nome da pessoa executando a função “setPersonName()” e fornecendo o nome da pessoa que é “Samuel” como parâmetro. Depois disso, definimos a cidade da pessoa chamando a função “setPersonCity()” e passando “London” como parâmetro. Em seguida, definimos também o idioma da pessoa utilizando a função “setPersonLanguage()” e passando “English” como parâmetro. Agora, chamamos as funções “lives()” e “speak()” separadamente com o objeto da classe “p_obj1”.

Código 4:

#include

usando espaço para nome padrão ;

aula Pessoa

{

privado :
string P_nome ;
string P_cidade ;
string P_idioma ;

público :
vazio setPersonName ( string novoNome ) {
P_nome = novo nome ;
}

string getPersonCity ( ) {
retornar P_cidade ;
}

vazio setPersonCity ( cidade de cordas ) {
P_cidade = cidade ;
}

string getPersonLanguage ( ) {
retornar P_idioma ;
}

vazio setPersonLanguage ( linguagem de string ) {
P_idioma = apenas ;
}

vazio vidas ( )
{


corte << P_nome << ' mora em ' << P_cidade << fim ;

}

vazio falar ( )
{


corte << P_nome << 'fala' << P_idioma << fim ;

}

} ;

interno principal ( ) {

Pessoa p_obj1 ;
p_obj1. setPersonName ( 'Samuel' ) ;
p_obj1. setPersonCity ( 'Londres' ) ;
p_obj1. setPersonLanguage ( 'Inglês' ) ;

p_obj1. vidas ( ) ;
p_obj1. falar ( ) ;

retornar 0 ;


}

Saída:

Aqui, mostra todos os valores que definimos em nosso código como resultado. Obtemos esse resultado chamando a função que criamos.

Conclusão

Exploramos os getters e setters na programação C++ neste guia. Explicamos que os métodos “getter” e “setter” oferecem uma melhor abstração e encapsulamento das operações internas da classe. Além disso, exploramos que a funcionalidade de validade de dados para proteger o membro de dados é mantida, permitindo que a classe altere seu código sem impactar o código externo. Fizemos isso com os códigos C++ utilizando esses getters e setters.