elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  ayuda con tipos QT
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayuda con tipos QT  (Leído 1,925 veces)
febef

Desconectado Desconectado

Mensajes: 28


Ver Perfil
ayuda con tipos QT
« en: 19 Noviembre 2012, 05:25 am »



Hola, no logro encontrar como convertir un qreal en c++ usando la libreria QT a un int...

estaria agradecidicimo si me pudieran ayudar!! :)


En línea

avesudra


Desconectado Desconectado

Mensajes: 724


Intentando ser mejor cada día :)


Ver Perfil
Re: ayuda con tipos QT
« Respuesta #1 en: 19 Noviembre 2012, 17:32 pm »

Hola fex , en Qt la mayoría de tipos generales son typedef's de otros , es decir una sustitución por otro nombre , si te fijas en la documentación de los tipos de Qt aquí:
http://qt-project.org/doc/qt-4.8/qtglobal.html
Podrás ver que un qreal es un typedef del tipo double en todas las plataformas excepto para aquellas que usan CPUs con arquitecturas ARM. En las plataformas basadas en ARM, un qreal es un typedef de float por razones de rendimiento.
Cito el texto en esa página:
Código:
typedef qreal

Typedef for double on all platforms except for those using CPUs with ARM architectures. On ARM-based platforms, qreal is a typedef for float for performance reasons.
Te pongo esto porque no te explicaste bien y creo que realmente lo que quieres es convertir un qreal a un qint para quitar decimales.Para eso creo que puedes poner esto:
Código
  1. qint32 numeroEnEntero= 0;
  2. qreal numeroEnReal = 4.54;
  3. numeroEnEntero = (qint32) numeroEnReal;
  4.  
Con eso debería funcionarte , si nó al ser un double se le puede hacer un cast a int porque básicamente es lo mismo:
Código
  1. qint32 numeroEnEntero= 0;
  2. qreal numeroEnReal = 4.54;
  3. numeroEnEntero = (int) numeroEnReal;
  4.  


En línea

Regístrate en
febef

Desconectado Desconectado

Mensajes: 28


Ver Perfil
Re: ayuda con tipos QT
« Respuesta #2 en: 19 Noviembre 2012, 19:31 pm »

gracias avesudra  :D!
En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: ayuda con tipos QT
« Respuesta #3 en: 20 Noviembre 2012, 02:30 am »

usa static_cast

Código
  1.  
  2. qint32 numeroEnEntero(0);
  3. qreal numeroEnReal(4.54);
  4.  
  5. numeroEnEntero = static_cast<qint32>(numeroEnReal);
  6.  
  7.  

también puedes usar la clase QVariant...

http://doc.qt.digia.com/qt/qvariant.html#convert
http://doc.qt.digia.com/qt/qvariant.html#Type-enum


Dulces Lunas!¡.
« Última modificación: 20 Noviembre 2012, 02:37 am por BlackZeroX (Astaroth) » En línea

The Dark Shadow is my passion.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Tipos de Datos de SQLite (ayuda!!) « 1 2 »
Bases de Datos
Skeletron 15 35,411 Último mensaje 15 Octubre 2009, 14:23 pm
por ^Tifa^
error de tipos en conexion a MYSQL, ayuda pls
Programación C/C++
gony89 2 2,802 Último mensaje 8 Febrero 2012, 11:23 am
por gony89
[AYUDA] Modificadores de tipos
Programación C/C++
Dipirona 4 2,455 Último mensaje 12 Abril 2013, 01:57 am
por 85
Tipos de NAT 1,2, 3
Redes
retr02332 1 3,923 Último mensaje 17 Julio 2020, 12:43 pm
por el-brujo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines