私はC++で多態的な再帰的下降パーサーを書くことに始めました。しかし、私は問題を実行しています。クラスは、このように設定されています class Node {
public:
std::vector<Node*> children;
};
class NodeBinary : public Node {
public:
Node* left;
Node* r
私は準拠C++コンパイラは、次のコードをサポートするために必要かどうかを知りたい: int a(a); // no other a is visible, we mean initialization of a with itself
のVisual Studio 2013は、しかし、(未宣言の識別子を)それをサポートしていません。いくつかの他のコンパイラがそれをコンパイルします。 ここに私
で再帰的な文法について説明します。 type FieldValue = Seq[String] :+: String :+: Int :+: Long :+: CNil
type FieldLeaf = FieldValue :+: SubField :+: CNil
type SubField = Seq[Field]
type Field = (String, FieldLeaf)