Linux图形界面编程答案.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux图形界面编程答案

《》试试卷:(共2题40分,第1题15分,第2题25分) 什么是虚函数?什么是纯虚函数?功能分别是什么? 虚函数是面向对象程序设计中的一个重要的概念。只能适用于指针和参考的计算机工程运算.当从父类中继承的时候,虚函数和被继承的函数具有相同的签名。但是在运行过程中,运行系统将根据对象的类型,自动地选择适当的具体实现运行。虚函数是面向对象编程实现多态的基本手段。 纯虚函数的定义仅提供方法的原型. 虽然在抽象类中通常不提供纯虚函数的实现, 但是抽象类中可以包含其实现, 纯虚函数 仅仅用来为要从基类中派生的函数占据一个位置。 纯虚函数在基类中没有定义,它们被初始化为0。 任何用纯虚函数派生的类,都要自己提供该函数的具体实现。 什么是信号?什么是槽?信号与槽有什么关联? QT采用了一种全新的对象和方法的关联与通信机制,称为信号和槽机制。信号和槽机制独立于c++编译器,在编译之前需要经过QT的专门预处理工具MOC(meta object compiler,元组件编译器)对代码进行预处理后才能进一步进行c++代码的编译。MOC会将qt应用程序中特有的代码自动转换为相应的c++语法代码。 ?????? QT用信号和槽机制来取代GUI编程中通常使用的回调函数进行事件处理的机制(如MFC用的是事件和回调函数机制)。 ?????? 信号和槽都采用函数作为存在形式。在Qt程序初始化或运行的过程中,可以静态或动态的将信号和槽相关联。当某一事件到来时,会发射信号,但是发射后,它并不需要关心信号的处理者是谁。当触发槽函数时,说明与其关联的信号被接受,但它不需要了解谁发出了信号,它只需要负责进行相应的处理即可。 1.信号 ?? 信号是qt中对事件的一种抽象,当一个事件到来时,会发射信号。所谓发射信号,就是通过Qt的通信机制,调用和信号相关的各个槽函数。信号采用函数的形式,当所有与信号关联的函数全部返回后,信号函数才会返回。信号函数在形式上与标准c++中的虚函数类似,信号函数只有在头文件中函数的声明,而没有函数的定义。 ?????? 信号的声明形式如下: ?????? signal: ?????????????? void Mysignal(); ?????????????? void Mysignal(int x); ?????????????? void MySignalParam(int x, int y); 2.槽 ???? 槽是Qt中负责信号处理的实体,当有信号发射时,与信号关联的所有槽会依次执行。槽也采用函数的形式,不过槽需要有实际的函数定义,相当于在标准c++中对虚函数的多态实现。 ??????? 槽函数的声明如下: ???????? void Myslot(); ???????? void?Myslot(int x ); ???????? void Myslotparam(int x, int y); 槽函数的定义同普通的c++函数无异,支持c++函数的一些特性。槽函数可以采用标准c++函数的使用方式,在代码中直接调用。槽函数具有访问权限的标识,分别为:public,protected,private。public说明该槽函数可以被其他类的信号所关联,protected说明只能被类本身和其子类的信号所关联,private说明该槽函数只能被本类本身的信号所关联。 ?????? 在Qt的基类QObject中有一个成员函数用来完成信号和槽的映射,函数原型如下: ?????? #include???QObject static bool QObject::connect(const QObject *sender, const char *signal, const QObject * receiver, const char *member); sender和receiver分别指定了被关联的信号和槽的发送者和接受者。signal是信号,Qt要求必须使用宏SIGNAL将信号函数指针转化为指定的类型。member是槽,Qt要求必须用宏SLOT转化函数指针。 二.编程题:(共3题60分,第1题15分,第2题20分,第3题25分) 1,.请编写简单的程序,其功能描述如下: 显示的窗体(QWidget)中包括一个按钮(QPushButton),能够实现点击按钮,达到关闭窗体的功能.#include QApplication #include QPushButton int main(int argc,char *argv[]) { QApplication app(argc,argv); QPushButton *button = new QPushButton(Close); button-show(); //信号与槽 QObject::conn

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档