Classes e Ponteiros
Eu fiz uma classe retangulo para aprender a trabalhar com classes e ponteiros:
Retangulo.h
#ifndef RETANGULO_H
#define RETANGULO_H
class retangulo
{
public:
retangulo(double*, double*);
void setCoordenadasX(double*);
void setCoordenadasY(double*);
double* getPontosX();
double* getPontosY();
double altura();
double largura();
double perimeter();
double area();
private:
double coordX[2];
double coordY[2];
};
#endif // RETANGULO_H
Retangulo.cpp
#include "retangulo.h"
retangulo::retangulo(double x, double y)
{
coordX[0] = x[0];
coordX[1] = x[1];
coordY[0] = y[0];
coordY[1] = y[1];
}
void retangulo::setCoordenadasX(double *x)
{
coordX[0] = x[0];
coordX[1] = x[1];
}
void retangulo::setCoordenadasY(double *)
{
coordY[0] = y[0];
coordY[1] = y[1];
}
double* retangulo::getPontosX()
{
return coordX;
}
double* retangulo::getPontosY()
{
return coordY;
}
double retangulo::altura()
{
return (coordY[0] - coordX[0]);
}
double retangulo::largura()
{
return (coordX[1] - coordX[0]);
}
double retangulo::perimeter()
{
return ((altura() * 2) + (largura() * 2));
}
double retangulo::area()
{
return (largura() * altura());
}
Main.cpp
#include <iostream>
#include "Retangulo.h"
using namespace std;
int main()
{
double vet1[2] = {1,5},
vet2[2] = {4,4};
retangulo ret1(vet1, vet2);
cout << "Retangulo 1\nAltura: " << ret1.altura() << "\nLargura: " << ret1.largura()
<< "\nArea: " << ret1.area() << "\nPerimetro: " << ret1.perimeter() << endl;
/*cout << "Retangulo 2\nAltura: " << ret2.getLenght() << "\nLargura: " << ret2.getWidth()
<< "\nArea: " << ret2.area() << "\nPerimetro: " << ret2.perimeter() << endl;*/
return 0;
}
Estou com erro em: undefined reference to 'retangulo::retangulo(double, double)'
Só que não entendi, estou enviando um vetor para a função. Não está certo ?
Discussão (1)
Carregando comentários...