一、问题与答案:
1、问:我的编译器不能编译OOP代码,它显示缺少.h文件,为什么?
答:需要OOP编译器,如egcs,来编译OOP程序,还需要安装C++库和头文件,有的编译器或者分发程序带有这些文件。
2、问:当编译一个面向对象的程序时,为什么会出现构造函数返回类型错误的消息?
答:可能是忘记在所声明类的最后一个括号( } )后添加分号(;)。
3、问:编译Qt程序时,出现许多缺少参照错误,为什么?
答:可能在编译程序时忘了加-lqt选项。
4、问:遇到 base operand of '->' has non-pointer type 'car' 错误消息,为什么?
答:如果对象是一个指针,应该使用->运算符访问其成员。否则,使用·运算符。
5、问:当编译程序时,遇到一条 initializing non-const 'bool &' with 'int *' will use a temporary警告消息,为什么?
答:可能在访问一个指针变量,需要使用*运算符去访问其实际数据。
二、测验
1、OOP代表什么意思?
答:OOP代表object-oriented programming,即面向对象程序设计。
2、什么是类?
答:类是对一种特殊数据类型的描述。可以描述类由哪些数据和哪些函数组成。
3、什么是对象?
答:如果编写一个描述汽车的类,该类的一个对象就是某一辆汽车。可以为每个汽车创建一个对象。对象也可以是一座房子,一条狗或者GUI程序中的一个图形按钮。
4、什么是方法?
答:方法与成员函数相同,这个函数属于某个类。
5、什么是类继承?
答:类继承就是基于已经存在的类构造新类的一种方法。可以实用经过测试的代码,只需要添加想要的功能。通过使用类继承,不必重复写代码。
6、使用QT时为什么需要OOP知识?
答:Qt是一个C++的类库。它是一个OOP库,使用C++中所包含的OOP功能。