0

ANTLR3 を使用していくつかの C++ コードを解析しようとしています。

C++ でテンプレートを解析したい。しかし、これを解析しようとすると、いくつかの問題が発生しました。

vector<int>(10)

私の解析では、このコードは次のとおりだと考えられていたため、これはテンプレート構文のない正当な入力であることがわかりました。

(vector < int) > (10)

私のパーサーは、これが 2 つの比較演算子であると考えています。

これは理にかなっていますが、私の期待を満たしていませんでした。

実際、このコードは次のように解析する必要があると思いました。

(vector<int>)(10)

演算子の優先順位はどのように処理すればよいですか? どうもありがとうございました!

更新: 最終的な解決策は、述語を使用することです。

4

1 に答える 1