我正在阅读解析器和解析器生成器,并在维基百科的LR解析页面中找到了这个语句:
可以使用LR解析器的一些变体来解析许多编程语言.一个值得注意的例外是C++.
为什么会这样?C++的哪个特定属性导致无法使用LR解析器进行解析?
使用谷歌,我只发现C可以用LR(1)完美解析,但C++需要LR(∞).
谷歌没有发现任何看似相关的东西.
我有一堆现有的,正在运行的C++代码,我想使用python来浏览它并找出类之间的关系等.
编辑:只是想指出:我认为我不需要或想要解析C++的每一点; 我只需要足够聪明的东西来获取类,函数和成员变量声明,并跳过函数定义.