Qt和C++关系

2020-09-21 14:41:40 浏览数 (1)

Qt是一个功能非常完善的c 跨平台图形库,其实与其说图形库倒不如说它是一个与MFC类似的应用框架。Qt本身就是使用c 语言实现。

QT理论上是跨平台的,MFC只是windows下的架构。 QT是一个完全的C 程序开发框架,包含类库和跨平台国际化开发工具。QT API和开发工具对所有支持平台都是一致的,从而可以进行独立于平台的程序开发和配置。使得跨平台软件编程直观、简易和方便。

QT是一种c 语言的方言。 因为它要使用自己的预处理器处理代码后,才能用C 编译器编译代码。

qt基于c 语言实现,c 本身只是为开发人员提供了一种编程手段,而Qt正是利用了它实现了一个半成品的应用框架。c 语言自身实现非常复杂,比如多态、继承、虚函数等语言特性的实现就较为底层,只能由天才级的it人士完成。而Qt相对c 而言属于高层次的应用,普通的Qt开发人员做的应用程序相对Qt而言又高了一个层此。

qt里的类都是由c 写的,你用qt编程的时候和c 不同点在于:很大一部分和信号与槽有关的c 代码不用你自己来写,是由qt sdk提供的一个程序自动生成的。 总之无论qt自动生成的代码还是你写的调用qt的代码或者qt类库底层的代码都是c 。qt开源。

QT是一个高层的类库,OpenGL是底层的库。 如果相互调用的话,是QT调用OpenGL。 OpenGL只是负责画出来一个图像,可能会细节到设计出来具体哪一个像素怎么画出来的,至于其他的事情完全不管。 QT则会做更多的事情,比如画出一个完整的对话框,并且替你把对话框的一些点击事件、关闭事件处理一下。而且QT画东西的时候,它并不一定是自己直接画,多半会通过调用OpenGL等库来画出来。 用木头盖房子来打比方的话,OpenGL负责帮你把树种出来,保证木材是结实耐用的。而QT帮你把木材加工好,做成一个木门,保证木门能够正确地安装和使用。 你需要的就是把这个做好的木门安装到你的房子上。

C 中的类,接口在QT中是可以使用的,和在C 中一样

C 是一个语言,而Qt是一个图形界面库(GUI) 除去界面相关操作,实际的编程回归c 中来。

0 人点赞