建筑c++使用 lex 和 yacc 的配置文件解析器

发布于 2024-12-07 16:50:44 字数 321 浏览 0 评论 0原文

我正在尝试使用 lex 和 yacc 等工具从头开始构建配置文件解析器(C++ 应用程序)。解析器将能够解析文件,例如

# Sub group example
petName = Tommy
Owner = {
   pet = "%petName%"
}

是否有关于如何使用 lex 和 yacc 等工具实现此目的的文章的分步指南/链接?我的想法是我将使用 getConfig(string propName) 等方法编写一个 Config (c++) 类。如果我像 config.getConfig(Owner.pet) 那样调用,它将返回我 Tommy。

I am trying to build config file parser (c++ application)from scratch using tools like lex and yacc. The parser will be able to parse files like

# Sub group example
petName = Tommy
Owner = {
   pet = "%petName%"
}

Is there any step by step guide/link to articles on how to achieve this using tools like lex and yacc? The idea is I will write a class say Config (c++) with methods like getConfig(string propName). If I invoke like config.getConfig(Owner.pet), it will return me Tommy.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦与时光遇 2024-12-14 16:50:44

Boost Property Tree

它是为配置文件设计的。它以以下格式进行读取和写入:

  • INI
  • INFO
  • XML
  • JSON

这是五分钟的教程页面,应该会给您一个好主意:

Boost Property Tree

It was designed for configuration files. It does reading, writing in the following formats:

  • INI
  • INFO
  • XML
  • JSON

Here is the five minute tutorial page which should give you a good idea:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文