niusouti.com

若类A中的静态成员函数display的原型如下:static void display( );,则说法正确的是( )A.该函数可以直接使用类A的普通数据成员B.该函数可以使用this指针C.该函数只能使用类A中的静态成员D.该函数既可以使用类A中的普通成员函数也可以使用类A中的静态成员函数

题目
若类A中的静态成员函数display的原型如下:static void display( );,则说法正确的是( )

A.该函数可以直接使用类A的普通数据成员

B.该函数可以使用this指针

C.该函数只能使用类A中的静态成员

D.该函数既可以使用类A中的普通成员函数也可以使用类A中的静态成员函数


相似考题
参考答案和解析
参考答案:C
更多“若类A中的静态成员函数display的原型如下:static void display( );,则说法正确的是( ) ”相关问题
  • 第1题:

    已知类sample是一个抽象类,其成员函数display是无形参、无返回类型的纯虚函数,请完成其声明:

    sample{

    public:

    sample( ){ };

    ______

    };


    正确答案:virtual void display( )=0;
    virtual void display( )=0;

  • 第2题:

    设有如下程序:include class A{public:int i;display(){ cout<<"class A\n"; }};c

    设有如下程序:#include <iostream. h>class A{public:int i;display(){ cout<<"class A\n"; }};class B{public:int i;display(){ cout<<"class B\n"; }};class C: public: A, public: B{int j;public:int i;show(){ j=i*i; display(); }};void main(){C demo;demo. show();}则主程序运行时,将( )。

    A.因为变量i的重复定义而报错

    B.因为对象demo间接调用display函数时产生歧义性而报错

    C.因为类定义的语法错误而不能运行

    D.没有语法错误,能够正常输出结果


    正确答案:B

  • 第3题:

    创建一个日期类Time和时间类Date,编写display函数用于显示日期和时间。要求:display函数作为类外的普通函数,分别在Time和Date类中将display声明为友元函数。在主函数中调用display函数,display函数分别引用Time和Date两个类的对象的私有数据,输出年、月、日和时、分、秒。 输入 年、月、日和时、分、秒 输出 年、月、日和时、分、秒 样例输入 2013 12 23 14 23 50 样例输出 2013/12/23 14:23:50


    程序代码:运行结果:

  • 第4题:

    设有如下程序: include using namespace std; class A { public:int i;display(){co

    设有如下程序: #include <iostream> using namespace std; class A { public: int i; display() { cout<<"class A\n"; } }; class B { public: int i; display() { cout<<"class B\n"; } }; class C : public A, public B { int j; public: int i; show ( ) { j = i * i; display(); } }; int main() { C demo; demo.show(); return O; } 则主程序运行时将( )。

    A.因为变量i的重复定义而报错

    B.因为对象demo间接调用display()函数时产生二义性而报错

    C.因为类定义的语法错误而不能运行

    D.没有语法错误,能够正常输出结果


    正确答案:B
    解析:本题主要考察C++中多继承的工作方式和二义性的解决办法。在C++中,允许一个派生类从多个基类派生,这种继承方式称为多继承。多继承的定义格式如下:class派生类名>:继承方式>基类名1>,继承方式2>基类名2>,…{派生类类体>};但是,如果一个派生类的两个或多个基类中有某个同名成员,在派生类中对这个成员的访问就可能出现二义性;同时,如果一个派生类是由两个或多个基类派生出来的,而这几个基类又有一个共同的基类,对该基类进行访问时,也可能会出现二义性。本题程序中,类C是由类A和类B多继承得到的派生类,但其自身函数show()中调用了display()函数,而这个函数是同时出现在类C的两个基类中的,因此程序会出现二义性,编译器将无法确定调用哪一个display()函数来执行操作,因此报错。解决二义性的通常办法是通过作用域运算符“::”进行限定。

  • 第5题:

    1、下面有关静态成员函数的描述中,正确的是()

    A.在静态成员函数中可以使用this指针

    B.在建立对象前,就可以为静态数据成员赋值

    C.静态成员函数在类外定义时,要用static前缀

    D.静态成员函数只能在类外定义


    在建立对象前,就可以为静态数据成员赋值