假定一个函数原型为“voidff(inta[],intn)”,则对应的函数指针类型为()。
A.*ff(int[],int)
B.int(*ff)(int*a,int)
C.void(*ff)(int*a,int)
D.void*ff(int*a,int)
A.*ff(int[],int)
B.int(*ff)(int*a,int)
C.void(*ff)(int*a,int)
D.void*ff(int*a,int)
A. int AA::a()
B. int AA:a()
C. AA::a()
D. AA::int a()
A. AB() {a=0;}
B. AB(int aa=0): a(aa) {}
C. AB(int aa): a(aa) {}
D. AB() {}
A. 4 和 5
B. 5 和 4
C. 4 和 20
D. 20 和 5
A.void f(int&) const;
B.const A * f(const int );
C.A& f(int, int=50);
D.A f(const int&) const;
A.voidfun(int(*p)[3]);
B.voidfun(int**p);
C.intfun(int(*p)[3]);
D.intfun(int*p[]);
A. 已经被改变
B. 可能被改变
C. 不变
D.不受函数调用的影响
下面给出了一个C函数,用于计算某个范围内的整数之和。可以假定begin总是小于或等于end(begin<=end): int summation(int begin,int end)(int result=begin; begin=begin+1; while(begin<=end){ result=result+begin; begin=begin+1; } return result; } 重写这个函数,使之使用递归而不是迭代。
A. K operator () (int);
B. int operator ()(int&);
C. int & operator ()(int);
D. K &operator()(int);
根据下面类中Reverse 函数成员的原型和注释写出它的类外定义。
class AA {
int* a;
int n;
int MS;
public:
void InitAA(int aa[], int nn, int ms) {
if(nn>ms) {cout<< "Error!"<< endl; exit(1);}
MS=ms;
n=nn;
a=new int[MS];
for(int i=0; i
}
AA* Reverse(); // 对于调用该函数的对象,将其a 数组中前n 个
// 元素值按相反的次序排列,返回指向该对象的指针。
};