niusouti.com
更多“若采用p—>abc(y)表达式调用一个成员函数,在成员函数中使用的()就代表了类外的P指针。”相关问题
  • 第1题:

    已知f1(int)是类A的公有成员函数,并将指针p定义为可以指向函数f1的指针类型,则可以实现让p是指向成员函数f1()的指针的语句为【 】。


    正确答案:p=A::f1;
    p=A::f1;

  • 第2题:

    在C++语言中每个类都有一个______指针,该指针指向正在调用成员函数的对象。


    正确答案:this
    this

  • 第3题:

    若有函数fun(x,y),并且已经使函数指针变量p指向函数fun,则使用p调用函数fun的正确方法是( )。

    A.(*p)fun(x,y);

    B.*pfun(x,y);

    C.(*p)(x,y)

    D.*p(x,y)


    正确答案:C

  • 第4题:

    已知一个类A,其中Fun()函数是类A的一个成员函数,A*p,a;p=&a;,则下面语句正确的是( )。

    A.语句p=&a;是把对象a赋值给指针变量p

    B.语句A*p,a;p=&a;调用两次类A的构造函数

    C.对语句*p.fun();的调用是正确的

    D.语句 p->fun();和语句 a.fun();等价


    正确答案:D
    解析:A是把对象的地址值赋给指针;B只会调用一次类的构造函数;C正确的调用应是(*p).fun()。

  • 第5题:

    若有函数fun(x,y),并且已经使函数指针变量p指向函数fun,则使用p调用函数 fun的方法是______。


    正确答案:(*p)(xy)。
    (*p)(x,y)。 解析: 一个函数总是占用一段连续的内存区,而函数名就是该函数所占内存区的首地址。我们可以把函数的这个首地址(或称入口地址)赋予一个指针变量,使该指针变量指向读函数。然后通过指针变量就可以找到并调用这个函数。我们把这种指向函数的指针变量称为“函数指针变量”。函数指针变量定义的一般形式为:类型说明符(*指针变量名)();其中“类型说明符”表示被指函数的返回值的类型。“(*指针变量名)”表示“*”后面的变量是定义的指针变量。最后的空括号表示指针变量所指的是一个函数。

  • 第6题:

    若classB中定义了一个classA的类成员Aa,则关于类成员的正确描述是()

    • A、在类B的成员函数中可以访问A类的私有数据成员
    • B、在类B的成员函数中可以访问A类的保护数据成员
    • C、类B的构造函数可以调用类A的构造函数做数据成员初始化
    • D、类A的构造函数可以调用类B的构造函数做数据成员初始化

    正确答案:C

  • 第7题:

    假定AA是一个类,“AA* abc()const;”是该类中一个成员函数的原型,若该函数返回this值,当用x.abc()调用该成员函数后,x的值()

    • A、 已经被改变
    • B、 可能被改变
    • C、 不变
    • D、 受到函数调用的影响

    正确答案:C

  • 第8题:

    若采用X.abC(y)表达式调用一个成员函数,在成员函数中使用的()就代表了类外的x对象。


    正确答案:*this

  • 第9题:

    关于this指针的说法正确的是()

    • A、this指针必须显式说明
    • B、定义一个类后,this指针就指向该类
    • C、成员函数拥有this指针
    • D、静态成员函数拥有this指针

    正确答案:C

  • 第10题:

    单选题
    运算符函数调用格式的表达式“y/x抖”与表达式“y.operator/(operator++(x,o))”的含义相同,由此可看出(  )
    A

    “/”和“++”都是作为成员函数重载的

    B

    “/”和“++”都是作为非成员函数重载的

    C

    “/”是作为成员函数重载的,“++”是作为非成员函数重载的

    D

    “/”是作为非成员函数重载的,“++”都是作为成员函数重载的


    正确答案: A
    解析:
    运算符函数有两种调用形式,第一种是像一般函数那样用函数名调用,即y.operator*(z)或者0perator*(y,z);另一种是通过运算符构成表达式,即 y*z。因为“++”运算符既可以作为前缀运算符,又可以作为后缀运算符,所以重载这个运算符时,重载后缀"++”时必须多一个虚拟参数:int。

  • 第11题:

    单选题
    假定AA是一个类,“AA& abc();”是该类中一个成员函数的原型,若该函数存在对*this赋值的语句,当用x.abc()调用该成员函数后,x的值()
    A

    已经被改变

    B

    可能被改变

    C

    不变

    D

    不受函数调用的影响


    正确答案: D
    解析: 暂无解析

  • 第12题:

    单选题
    假定AA是一个类,“AA* abc()const;”是该类中一个成员函数的原型,若该函数返回this值,当用x.abc()调用该成员函数后,x的值()
    A

     已经被改变

    B

     可能被改变

    C

     不变

    D

     受到函数调用的影响


    正确答案: D
    解析: 暂无解析

  • 第13题:

    运算符函数调用格式的表达式:y/x++与表达式:y.operator/(operator++(x,O))含义相同,由此可看出()。

    A.“/”和“++”都是作为成员函数重载的

    B.“/”和“++”都是作为非成员函数重载的

    C.“/”是作为成员函数重载的,“++”是作为非成员函数重载的

    D.“/”是作为非成员函数重载的,“++”都是作为成员函数重载的


    正确答案:C
    解析:本题考核运算符的重载。假定已经作为某个类的成员函数重载了二元运算符+,且c1、c2都是该类的对象,则c1.operator+(c2)与c1+c2含义相同。如果+作为该类的非成员函数重载,则operator+(c1,c2)与c1+c2含义相同。所以通过题目给出的两个表达式可看出“/”是作为成员函数重载的,“++”是作为非成员函数重载的。

  • 第14题:

    下列关于this指针的叙述中,正确的是( )

    A.this指针是一个隐含指针,它隐含于类的成员函数中

    B.只有在使用this时,系统才会将对象的地址赋值给this

    C.类的友元函数也有this指针

    D.this指针表示了成员函数当前操作的数据所属的对象


    正确答案:D
    解析:this指针是成员函数所属对象的指针,它指向类对象的地址;它隐含于每个类的非静态成员函数中;this指针只能在类的成员函数中使用,它指向该成员函数被调用的对象;静态成员函数没有this指针,因为类中只有一个静态成员函数实例,使用this指针无意义。

  • 第15题:

    已知fl(int)是类A的公有成员函数,p是指向成员函数fl()的指针,采用赋值,( )是正确的。

    A.p=fl

    B.P=A::fl

    C.P=A::fl()

    D.P=fl()


    正确答案:B

  • 第16题:

    已知f1(int)是类A的公有成员函数,p是指向成员函数f1()的指针,采用赋值,( )是正确的。

    A.p=f1

    B.P=A::f1

    C.P=A::f1()

    D.P=f1()


    正确答案:B

  • 第17题:

    若采用p—>abc(y)表达式调用一个成员函数,在成员函数中使用的()就代表了类外的P指针。


    正确答案:this

  • 第18题:

    假定AA是一个类,“AA& abc();”是该类中一个成员函数的原型,若该函数存在对*this赋值的语句,当用x.abc()调用该成员函数后,x的值()

    • A、已经被改变
    • B、可能被改变
    • C、不变
    • D、不受函数调用的影响

    正确答案:A

  • 第19题:

    f1()函数是类A的公有成员函数,p是指向类的成员函数f1()的指针,下列表示中正确的是()。

    • A、p=f1()
    • B、p=f1
    • C、p=A::f1
    • D、p=A::f1()

    正确答案:C

  • 第20题:

    当派生类指针指向基类对象时()

    • A、可以直接调用基类的成员函数
    • B、可以调用派生类对象的成员函数
    • C、必须强制将派生类指针转换成基类指针才能调用基类的成员函数
    • D、以上说法都不对

    正确答案:C

  • 第21题:

    填空题
    若采用p—>abc(y)表达式调用一个成员函数,在成员函数中使用的()就代表了类外的P指针。

    正确答案: this
    解析: 暂无解析

  • 第22题:

    单选题
    当基类指针指向派生类对象时,利用基类指针调用派生类中与基类同名但被派生类重写后的成员函数时,调用的是()
    A

    基类的成员函数

    B

    派生类的成员函数

    C

    不确定

    D

    先调用基类的,再调用派生类的


    正确答案: C
    解析: 暂无解析

  • 第23题:

    填空题
    若采用X.abC(y)表达式调用一个成员函数,在成员函数中使用的()就代表了类外的x对象。

    正确答案: *this
    解析: 暂无解析

  • 第24题:

    单选题
    若classB中定义了一个classA的类成员Aa,则关于类成员的正确描述是()
    A

    在类B的成员函数中可以访问A类的私有数据成员

    B

    在类B的成员函数中可以访问A类的保护数据成员

    C

    类B的构造函数可以调用类A的构造函数做数据成员初始化

    D

    类A的构造函数可以调用类B的构造函数做数据成员初始化


    正确答案: A
    解析: 暂无解析