class Triangulo: public Figura
{
public:
int x1, y1, x2, y2, x3, y3;
void dibujar_triangulo()
{
cout<<"Se ha dibujado un triangulo color "<<color<<" con coordenadas "<<
"("<<x1<<","<<y1<<")"<<endl<<"("<<x2<<","<<y2<<")"<<endl<<"("<<x3<<","<<y3<")"<<endl;
}
};
I’ve got this error:
invalid operands of types 'const char [2]' and '<unresolved overloaded function type>' to binary 'operator<<'
What’s wrong?
Also, Here’s the whole code:
#include <conio.h>
#include <stdio.h>
#include <iostream>
#include <string>
using namespace std;
class Figura
{
public:
string color, nombre;
int num_lados;
void establecer_color(string param)
{
color=param;
}
string obtener_color()
{
string a;
cin>>a;
return a;
}
void establecer_lados(int param)
{
num_lados=param;
}
int obtener_lados()
{
int a;
cin>>a;
return a;
}
};
class Circulo: public Figura
{
public:
int x, y;
void dibujar_circulo()
{
cout<<"Se ha dibujado un circulo color "<<color<<" con centro en ("<<x<<","<<y<<")"<<endl;
}
};
class Rectangulo: public Figura
{
public:
int x1, y1, x2, y2;
void dibujar_rectangulo()
{
cout<<"Se ha dibujado un rectangulo color "<<color<<" con coordenadas "
<<"("<<x1<<","<<y1<<")"<<endl<<"("<<x2<<","<<y2<<")"<<endl;
}
};
class Triangulo: public Figura
{
public:
int x1, y1, x2, y2, x3, y3;
void dibujar_triangulo()
{
cout<<"Se ha dibujado un triangulo color "<<color<<" con coordenadas "<<
"("<<x1<<","<<y1<<")"<<endl<<"("<<x2<<","<<y2<<")"<<endl<<"("<<x3<<","<<y3<")"<<endl;
}
};
int main()
{
Circulo Cir;
Triangulo Tri;
Rectangulo Rec;
int i;
initsw:
cout<<"Eliga:"<<endl<<"1.\tCirculo"<<endl<<"2.\tRectangulo"
<<endl<<"3.\tTriangulo"<<endl<<"4.\tSalir"<<endl;
cin>>i;
cout<<"Indique el color de su figura"<<endl;
cin>>Cir.color;
Tri.color=Cir.color;
Rec.color=Cir.color;
switch (i)
{
case 1:
cout<<"Por favor introduzca el centro de su circulo:(x,y)"<<endl;
scanf("(%d,%d)",&(Cir.x),&(Cir.y));
Cir.dibujar_circulo();
break;
case 2:
cout<<"Por favor introduzca las coordenadas de su rectangulo:(x1,y1),(x2,y2)"<<endl;
scanf("(%d,%d),(%d,%d)",&(Rec.x1),&(Rec.y1),&(Rec.x2),&(Rec.y2));
Rec.dibujar_rectangulo();
break;
case 3:
cout<<"Por favor introduzca las coordenadas de su triangulo:(x1,y1),(x2,y2),(x3,y3)"<<endl;
scanf("(%d,%d),(%d,%d),(%d,%d)",&(Tri.x1),&(Tri.y1),&(Tri.x2),&(Tri.y2),&(Tri.x3),&(Tri.y3));
Tri.dibujar_triangulo();
break;
case 4:
goto end;
break;
default:
cout<<"Error, elija otra opcion"<<endl;
goto initsw;
}
end:
return 0;
}
It is a typo. You only wrote
<before the last")"in your function. Some things are just easier to spot with properly formatted code: