Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - class_OpenGL

#151
Jaja, eso lo sabía. Lo preguntaba por si algún día me encontraba en la situación de que una librería sobrecargó ese operador, y entonces no pudiera obtener la dirección de memoria del objeto. Pero por lo que veo por tu respuesta, no hay manera... Una lástima :P

Gracias por tu respuesta!
#152
Programación C/C++ / Re: Necesito ayuda
31 Julio 2016, 03:22 AM
Dime la dirección de tu casa, para que así te pueda hacer las tareas xD.

Siento lo del sarcasmo. Ahora en serio, el objetivo de estudiar programación es aprender a programar, y si no haces códigos, nunca aprenderás. En este foro no se realizan tareas, lo que se hace en este foro es poner preguntas concretas, y nosotros, amablemente, intentaremos llegar a una solución. Por ejemplo, puedes preguntar: ¿por qué no me funciona esta parte del código? o ¿cómo puedo hacer tal cosa (concreta)?

Otra cosilla, probablemente los moderadores te digan que pongas títulos descriptivos, y es que lo pone en las reglas de este foro. Por ejemplo, podrías poner: "(Ayuda) Problemas al crear una agenda electrónica en C++"

Por si le quieres echar un vistazo a esas reglas: http://foro.elhacker.net/programacion_cc/reglas_del_subforo-t251603.0.html
#153
Hola, muy buenas. Estoy mirando un poco sobre C++, aunque esté centrado en C, por diversión, cuando de repente me fijé en que se podría sobrecargar el operador de & (operador para sacar la dirección de una variable/objeto). Entonces, la duda es, si una clase tiene sobrecargada el operador &, ¿cómo puedo sacar la dirección de esa clase? La única manera que se me ocurre es hacer un método que retorne 'this', pero debería haber otra manera, ¿no?

Código de ejemplo:
Código (cpp) [Seleccionar]
#include <iostream>

class Foo {
public:
int operator &();
};

int main() {
Foo foo;

std::cout << &foo << std::endl;

return 0;
}

int Foo::operator &() {
return 5;
}


La salida, efectivamente será:
5

Muchas gracias
#154
Ah gracias por la página!
#155
Vaya, eso es información muy interesante. ¡Gracias!... Otra pequeña pregunta, si por ejemplo, quiero que solo ignore 64 caracteres, ¿la estrctura sería...

fscanf(file, "%64*s");

... o sería con el asterisco primero y luego el 64 (el 64 es un ejemplo)?
#156
Yo también ando buscando, pero solamente encontré lo que dices tu. Lo más seguro es que sea eso entonces. Algo en lo que me he fijado es que no se extraen datos cuando pasas un puntero NULL. Esto lo digo porque, por ejemplo, la línea que ejecuto se supone que ignoraría una línea, pero no es así. Lo sé porque al intentar ignorar una línea con esa función y parámetros determinados, no se ignora, simplemente es como si la función no se hubiera ejecutado o llamado. Sabiendo eso, lo más probable es que como tu dices, sea una implementación no estándar. Ahora mismo no puedo, pero en un rato lo probaré bajo Windows para ver si funciona con el compilador VC++
#157
Hola, me preguntaba si se puede pasar argumentos nulos a las funciones fscanf para que se ignore tal argumento.

Código de ejemplo donde se ilustra como ignorar una línea. Solo funcionaría si se pueden pasar argumentos nulos:

#include <stdio.h>

int main() {
       fscanf(stdin, "%s[^'\n']", NULL);
       fprintf(stdout, "Linea ignorada");

       return 0;
}


Esto lo he probado bajo Linux (Debian) y me ha funconado sin que se produzcan errores. Eso si, el compilador me ha advertido. Lo que no sé si es estándar o me ha funcionado de casualidad.

P.D.: En el caso que esto no funcione como debiera, ¿hay alguna forma de que fscanf ignore lo que yo quiera?

Muchas gracias
#158
La función 'vectorizaciont' retorna un puntero a double, mientras que debería retornar un puntero a entero. Además, el rewind o fseek lo tienes que hacer también de leer los enteros
#159
Solo voy a indicar el fallo, aunque veo algunas cosas que se podrían optimizar. El fallo es que al contar las líneas, ya has leído el archivo, por lo que cuando vas a tomar los datos enteros, no lees nada porque ya has leído el archivo. Para reiniciar la lectura del archivo, usa la siguiente función: fseek(apuntador_archivo, 0, SEEK_SET);
#160
Lo que tienes que hacer es irte a code blocks, ir al menú 'Project' -> 'Build Options' -> Pestaña 'Search Directories' -> Pestaña 'Linker' -> Botón 'Add' y seleccionas la carpeta en la que esté libglfw3.a

Una vez hecho eso, en Code::Blocks hay que ir a 'Project' -> 'Build Options' -> Pestaña 'Linker Settings' y en el cuadro nombrado 'Other Linker Options' tienes que escribir lo siguiente:

-lglfw3
-lopengl32
-lgdi32