El apuntador this se utiliza para que un objeto tenga acceso a su propia dirección. El apuntador this se utiliza para hacer referencia a los datos miembro y a sus funciones miembro.
Codificacion en CodeBlocks
#include <iostream>
using namespace std;
class Circulo
{
private:
double radio;
friend void estRadio(Circulo &, double rad);
public:
Circulo(double rad);
Circulo();
void estableceRadio(double rad);
double areaCirculo();
void imprimeDatosCirculo();
double obtenerRadio() const;
void imprimeInfCirculo()const;
};
Circulo::Circulo(double rad)
{
radio=rad;
}
Circulo::Circulo()
{
radio=0;
}
void Circulo::estableceRadio(double rad)
{
radio=rad;
}
double Circulo::areaCirculo()
{
return 3.1416*radio*radio;
}
void Circulo::imprimeDatosCirculo()
{
cout<<"\n\nDatos del circulo\n";
cout<<"Radio: "<<radio<<endl;
cout<<"Area: "<<areaCirculo()<<endl;
}
double Circulo::obtenerRadio() const
{
return radio;
}
void Circulo::imprimeInfCirculo() const
{
double const r=this->obtenerRadio(); //acceso con this
cout<<"\n\nRadio : "<<this->obtenerRadio()<<endl;
cout<<"Area: "<<(3.1416*r*r)<<endl;
}
void estRadio(Circulo &c, double val)
{
c.radio=val;
}
int main()
{
Circulo c1;
const Circulo c2(45.0);
estRadio(c1,15.0);
c1.imprimeDatosCirculo();
c1.estableceRadio(10);
c1.imprimeDatosCirculo();
c2.imprimeInfCirculo();
return 0;
}
No hay comentarios:
Publicar un comentario