第1题:
( 32 ) 虚函数支持多态调用 , 一个基类的指针可以指向派生类的对象 , 而且通过这样的指针调用虚函数时 ,
被调用的是指针所指的实际对象的虚函数,而非虚函数不支持多态调用。有如下程序:
#include
using namespace std;
class Base
{
public:
virtual void f () {cout<< ” f0+ ” ;}
void g () {cout<< ” g0+ ” ;}
};
class Derived:public Base
{
public:
void f () {cout<< ” f+ ” ;}
void g () {cout<< ” g+ ” ;}
};
int main ()
{
Derived d;
Base*p= & d;
p->f () ; p->g () ;
return 0:
}
运行时输出的结果是
A ) f+g+
B ) f0+g+
C ) f+g0+
D ) f0+g0+
第2题:
第3题:
此题为判断题(对,错)。
第4题:
以下程序的运行结果是______。
include<iostream.h>
include<math.h>
template<class T>
class TAdd//定义类模板TAdd,T为类型
{
Tx,y;
public:
TAdd (Ta,Tb) {x=a,y=b;) //构造函数
Tadd() { retum x+y;}//成员函数
};
void main( )
{
TAdd<int>A (5,6);
第5题:
第6题:
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非虚函数不支持多态调用。有如下程序; #include <iostream> using namespace std; class Base { public: virtual void f() {cout<<"f0+";} void g() {cout<<"g0+";} }; class Derived: public Base { public: void f() {cout<<"f+";} void g() {cout<<"g+";} }; int main() { Derived d; Base *p=&d; P->f(); P->g(); return 0; }运行时输出的结果是
A.f+g+
B.f0+g+
C.f+g0+
D.f0+g0+
第7题:
第8题:
已有函数fun(a,b),为了使函数指针变量P指向函数fun,则使用的赋值语句是______。
第9题:
窗体上有一个名称为Command1的命令按钮,其单击事件过程及有关函数过程如下: Private Sub Command1 Click( ) Dim n As Integer n=add(5,10) Print n End Sub Function add(v1 As Integer,v2 As Integer,Optiona1 v3)As Integer If Not IsMissing(v3)Then add=v1+v2+v3 Else add=v1+v2 End If End Function 运行程序,单击命令按钮,以下叙述中正确的是( )。
A.程序不能正常运行,因为函数add的参数定义有错
B.程序不能正常运行,因为函数定义与函数调用语句的参数个数不匹配
C.程序能正常运行,结果是在窗体上显示15
D.程序能正常运行,结果是在窗体上显示510v3
第10题:
运行下面的程序,输入字符串Microsoft Visual Studio,则程序的执行结果是( )。 #include<stdio.h> main() {char Chr[20]; scanf("%s",&Chr); printf("%s\n”,Chr); }
A.Microsoft Visua1 Studio
B.M
C.Microsoft
D.MicrosoflVisualStudio