buenas señores estoy tratando de que las dos funciones me devuelvan dos valores cada uno y asi unirlos a la funcion de 4 parmetros el inconveniente esque para los dos primeros parametros simpre me toma como 0 porque que se deve
void ControlRaton(int button, int state, int x, int y)
{
float t1=0,t2=0,b1=0,b2=0,k1=0,k2=0,p1=0,p2=0;
int b3=0,b4=0,c3=0,c4=0,puntos[20],i=0,puntos1[20],w=0,x1=0,y1=0;
if(button==GLUT_RIGHT_BUTTON && state==GLUT_UP)
{
cout<<x<<" "<<y<<" "<<endl;
draw_pixel(x, y);
x1=x;
y1=y;
}
if(button==GLUT_RIGHT_BUTTON && state==GLUT_DOWN)
{
cout<<x<<" "<<y<<" "<<endl;
draw_pixel(x, y);
}
if( state==GLUT_UP &&state==GLUT_DOWN)
{
bres(x1, y1, x,y);//AKA deve unirse los dos valores pero no se puede me toma los dos primeros como cero
}
}
x y y son las coordenas de la pantalla en pixeles ......................
Si pones todo el codigo, o al menos, la funcion bres(x1, y1, x,y);, se te podra ayudar mejor.
De todos modos, las funciones en C++ solo pueden devolver un valor, si quieres que una funcion te devuelva mas valores, en tu caso 4, asignale los parametros por referencia.
Eso deberías hacerlos pasándole punteros a la función. Una función sol puede devolver un valor.
por ejemplo, una función que le metes un número y devuelve los dos siguientes.
void funcion(int numero, int *n1, int *n2)
{
*n1 = numero+1;
*n2 = numero+2;
}
int valor0=3;
int *valor1;
int *valor2;
funcion(valor0,valor1,valor2);
printf("1.- %i, 2.- %i, 3.- %i", valor0, *valor1, *valor2);
gracias