¿Qt tiene una interfaz C?

2 minutos de lectura

He encontrado respuestas contradictorias en la web: algunos dicen que sí, otros dicen que no. Tampoco pude encontrar ningún detalle en la documentación oficial de Qt. Entonces, ¿Qt tiene enlaces C o no?

avatar de usuario
Eli Bendersky

Respuesta corta: no.

Si necesita un conjunto de herramientas GUI completo para C, puede usar GTK+.

Para usar Qt, usted deber tener un compilador de C++. Pero eso no significa que su “lógica de aplicación” no pueda escribirse en C, compilarse con un compilador de C y vincularse cuidadosamente a la parte de C++ (la GUI con Qt). Esta lógica de aplicación puede ser genérica, enlazable a otros ejecutables (C puro, mixto C/C++, etc.) Todo depende de lo que necesites.

Sin embargo, Qt es excelente para C++ y es una buena razón para decidir usar C++ para un proyecto en particular, incluso si aún desea mantener partes en C.

Desafortunadamente no, pero puede configurar su programa como un conjunto de bibliotecas que logran su lógica comercial y escribirlas en C, luego puede usar un poco de C ++ para vincular lo que escribió como biblioteca con una GUI usando QT.

¡Este es un buen enfoque también porque luego puede reutilizar su biblioteca e implementar muchos otros front-end con diferentes kits de herramientas o idiomas!

No. Qt es C++. Pero podría simplemente escribir código de estilo C en todas partes que no interactúan/crean elementos GUI y compilar todo con el compilador de C++ de su elección.

avatar de usuario
Sean Mc Millan

Solía ​​haber un enlace llamado QtC, pero buscarlo revela este hilo:

De Richard Dale:

Solía ​​mantener los enlaces C que usaban los enlaces Objective-C y Qt#. Pero la biblioteca Smoke es mucho mejor, aunque no es un enlace C, y eliminé los enlaces QtC para usar humo en su lugar.

el humo esta aqui. No he podido encontrar una referencia clara de los enlaces QtC en ninguna parte, aunque recuerdo haber oído hablar de ellos.

No creo que lo haga. Qt siempre se describe como una “biblioteca de clases” y requiere compiladores de C++ para compilarse. Podría intentar escribir/encontrar una DLL/interfaz que se ajustará a QT y proporcionará una API a una capa C.

avatar de usuario
R.. GitHub DEJAR DE AYUDAR A ICE

Siempre puede usar un compilador de C ++ que simplemente traduzca C ++ a C, luego llame a los nombres destrozados que genera, etc. 🙂

avatar de usuario
Brian

Qt utiliza el Meta Object Compiler (MOC) para hacer que la señal y la ranura funcionen (por ejemplo, hacer devoluciones de llamada de función basadas en la señal del usuario y las definiciones de ranura). Entonces, Qt no es realmente C++, pero es realmente la sintaxis propia de Qt, que es muy parecida a C++, pero con señales y ranuras. Esto hace que la ‘c’ externa sea inútil.

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad