ambiguity

    2热度

    3回答

    代码 default() h :: Bool h = 1.0 == 1.0 --Error. Ambiguity. 不能编译。这是预料之中的,因为有歧义。它可以是Float或Double,Haskell不知道我们想要哪一个。 但代码 default() foo :: (Fractional a, Eq a) => a -> Bool foo x = x == 1.0 编译成功。我不

    0热度

    1回答

    考虑下面这个简单的例子: #include <iostream> using namespace std; class A { public: virtual void foo() { cout<<"A"<<endl; } }; class B: public virtual A { public: virtual void foo(){

    4热度

    2回答

    假设我有这个可变参数的基类模板: template <typename ... Types> class Base { public: // The member foo() can only be called when its template // parameter is contained within the Types ... pack. tem

    0热度

    1回答

    我有一个遗留的C++应用程序(Solaris Sun CC 5.6已编译),它使用来自ages的xercers XML parcer v1.6.0。所有好的沙发。 最近一个其他第三方库升级迫使我们使用boost库和Sun CC 5.9编译器。 但是我们在集成boost库时开始看到下面的问题,运算符重载包含代码和xercer librabry之间的歧义错误; 错误: /app/home/build/

    0热度

    1回答

    我一直在试图解决这个问题几个小时,它只是一个试验和错误的无限循环。我需要这个语法明确: S -> Sa | Sb | aS | bS | aa 据我所知这可以产生与“AA”的地方出现一个和b的任意组合。主要的问题是它可以从双方产生,所以有几个解析树。我最好的尝试,到目前为止是这样的: S -> aS | bS | aT T -> aU | a U -> bU | b 这产生了任何一个和

    0热度

    1回答

    我目前正在研究车牌识别。为了同样的目的,我已经训练了提取和预处理的字母数字字符图像。 在0,Q,D和B的字母中,8,模糊性正在发生。我附上了0,Q,D的图像。很好地帮助我做什么。我已经使用了unicharambigs但没有用这是因为我对Q有较少的训练图像吗?

    -1热度

    1回答

    我有以下问题。这个语法是不明确的: stmt - > if expr then stmt stmt'| a stmt' - > else stmt | EPSILON EXPR - >乙 我试图修改它,我的结果是: 语句 - >如果expr然后stmt是” | a stmt'' - > stmt |语句” 语句” - > b,否则语句 EXPR - >乙 但这并不产生相同的语言。 有人可以帮我修改

    0热度

    1回答

    我有以下的语法定义有两个保留关键字和两个类似的声明(?): module Test // parse(#Statement,"do c") succeeds // parse(#Statement,"define c") gives an ambiguity start syntax Statement = do: "do" Identifier+ | define:

    2热度

    1回答

    在C++中,我可以这样做: void func(void *something) { cout << "something" << endl; } void func(nullptr_t) { cout << "nullptr_t" << endl; } int main() { int nothing = 5; func(¬hing);

    0热度

    1回答

    我想这 import scala.util.parsing.combinator._ def name = ident ^^ {case ident => if (ident.contains("a")) ident.toUpperCase else ident println(parseAll(name, "aa")) // parsed: AA println(parseAll(nam