参考答案和解析
正确答案: 文法G[S]的一个句子如果能找到两种不同的最左推导(或最右推导),或者存在两棵不同的语法树,则称这个句子是二义性的。
更多“句子的二义性(这里的二义性是指语法结构上的)”相关问题
  • 第1题:

    关于多继承二义性的描述中,错误的是( )。

    A.一个派生类的两个基类中都有某个同名成员,在派生类中对这个成员的访问可能出现二义性

    B.解决二义性的最常用的方法是对成员名的限定法

    C.基类和派生类中同时出现的同名函数,也存在二义性问题

    D.一个派生类是从两个基类派生出来的,而这两个基类又有一个共同的基类,对该基类成员进行访问时,可能出现二义性


    正确答案:C

  • 第2题:

    下列关于二定义性的说法错误的是 ______。

    A.派生类中的成员与基类的成员同名,在调用时可能存在二义性

    B.派生类的二个基类是有同名成员,调用这一成员时可能产生有二义性

    C.派生类的二个基类是从同一共同基类派生出来,调用基类的成员时可能存在二义性

    D.使用成员限定可解决二义性问题


    正确答案:B

  • 第3题:

    有如下程序: class Base1 { public: int a; void b() { return}; void c(float) { a=float;} }; class Base2 { public: void b(){} void c(){} private: int a; }; class Derived:public Basel,public Base2 { public: void b(){} }; void main() { Derived obj; obj.a=1; //① obj.b(); //② obj.c(10); //③ } 下面各项对语句①②③的描述中,正确的是( )。

    A.语句①②③都有二义性

    B.语句①③有二义性,②没有二义性

    C.语句①有二义性,②③没有二义性

    D.语句①②有二义性,③没有二义性


    正确答案:B
    解析:C++中二义性问题的检查在访问控制权限或类型检查之前进行,即访问权限的不同或类型不同不能解决二义性问题。所以语句①③有二义性。由于Derived中又重新定义了同名成员函数b(),所以b()函数的调用就不存在二义性问题。

  • 第4题:

    多重继承的二义性可以避免吗?


    正确答案:可以避免,通常使用类名限定。

  • 第5题:

    已经证明文法的二义性是可判定的。


    正确答案:错误

  • 第6题:

    LR(1)文法都是()。

    • A、无二义性且无左递归
    • B、可能有二义性但无左递归
    • C、无二义性但可能是左递归
    • D、可以既有二义性又有左递归

    正确答案:C

  • 第7题:

    文法的二义性


    正确答案: 一个文法如果包含二义性的句子,则这个文法是二义文法,否则是无二义文法。

  • 第8题:

    文法的二义性和语言的二义性是两个不同的概念。


    正确答案:正确

  • 第9题:

    判断题
    文法的二义性和语言的二义性是两个不同的概念。
    A

    B


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

  • 第10题:

    名词解释题
    二义性文法

    正确答案: 如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是二义性文法。
    解析: 暂无解析

  • 第11题:

    单选题
    若文法G定义的语言是无限集,则文法必然是()
    A

    递归的

    B

    前后文无关的

    C

    二义性的

    D

    无二义性的


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

  • 第12题:

    单选题
    LR(1)文法都是()。
    A

    无二义性且无左递归

    B

    可能有二义性但无左递归

    C

    无二义性但可能是左递归

    D

    可以既有二义性又有左递归


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

  • 第13题:

    若文法G定义的语言是无限集,则文法必然是(51)。

    A.递归的

    B.前后丈无关的

    C.二义性的

    D.无二义性的


    正确答案:A
    解析:本题考查语言文法的特点。所谓文法就是语法规则,是描述语言的语法结构的形式规则。如果一个文法定义的语言是无限集,那么此文法必然是递归的。

  • 第14题:

    如果一个文法存在某个句子对应两棵不同的语法树,则文法是二义性的。()

    此题为判断题(对,错)。


    正确答案:正确

  • 第15题:

    关于二义性的描述错误的是

    A.一个子类的两个父类中都有某个同名成员,在子类中对该成员访问可能出现二义性
    B.解决二义性可以用对成员名的限定法
    C.父类和子类中同时出现同名函数,也可能存在二义性
    D.一个子类是从两个父类派生出来的,而这两个父类又有一个共同的父类,对该父类成员进行访问时,可能出现二义性

    答案:C
    解析:
    基类和其继承类同时出现同名函数,则在继承类中实现对象中调用该函数是使用继承类中的定义,这种情况下是不会产生二义性的。

  • 第16题:

    若文法 G 定义的语言是无限集,则文法必然是()。

    • A、递归的
    • B、前后文无关的
    • C、二义性的
    • D、无二义性的

    正确答案:A

  • 第17题:

    二义性文法


    正确答案: 如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是二义性文法。

  • 第18题:

    左线性文法是无二义性文法。


    正确答案:错误

  • 第19题:

    在多继承中,什么情况下会出现二义性?怎样消除二义性?


    正确答案:在多继承中会出现两个问题:名冲突和重复继承。在多继承中,当多个基类中包含同名的成员时,它们在派生类中就会出现名冲突问题;在多继承中,如果直接基类有公共的基类,就会出现重复继承,这样,公共基类中的数据成员在多继承的派生类中就有多个拷贝。在C++中,解决名冲突的方法是用基类名受限;解决重复继承问题的手段是采用虚基类。

  • 第20题:

    涉及路网二义性路径的,按照二义性路径识别系统记载的路径标识信息确定车辆行驶路径,按实拆分车辆通行费。


    正确答案:正确

  • 第21题:

    名词解释题
    文法的二义性

    正确答案: 一个文法如果包含二义性的句子,则这个文法是二义文法,否则是无二义文法。
    解析: 暂无解析

  • 第22题:

    问答题
    在多继承中,什么情况下会出现二义性?怎样消除二义性?

    正确答案: 在多继承中会出现两个问题:名冲突和重复继承。在多继承中,当多个基类中包含同名的成员时,它们在派生类中就会出现名冲突问题;在多继承中,如果直接基类有公共的基类,就会出现重复继承,这样,公共基类中的数据成员在多继承的派生类中就有多个拷贝。在C++中,解决名冲突的方法是用基类名受限;解决重复继承问题的手段是采用虚基类。
    解析: 暂无解析

  • 第23题:

    名词解释题
    句子的二义性(这里的二义性是指语法结构上的)

    正确答案: 文法G[S]的一个句子如果能找到两种不同的最左推导(或最右推导),或者存在两棵不同的语法树,则称这个句子是二义性的。
    解析: 暂无解析