1

私はPython構文のコンパイラプロジェクトに取り組んでいますが、継承やオブジェクト指向の概念などの新しい機能を追加しています..だから私は次のようなクラスを持っています:

class a {
   public:
      class b{};
};

そして、bison 内でクラス b からのポインターを宣言したいので、yacc grammer の前に次のように記述します。

 %union{
    class a::b *pointer;
}

しかし、実行するとこのエラーが表示されます:

エラー C2143: 構文エラー: ';' がありません 前 '*'

エラー C2838: 'b': メンバー宣言の修飾名が正しくありません

助けてください !

4

0 に答える 0