gpt4 book ai didi

c++ - 初始化表达式中使用的声明变量 - 含义?

转载 作者:太空狗 更新时间:2023-10-29 21:06:10 29 4
gpt4 key购买 nike

取自this answer here :

static const qi::rule<std::string::iterator, ast_t()> node = 
'{' >> *node >> '}' | +~qi::char_("{}");

请注意,声明了名称为 node 的常量变量,但 node 用于初始化此常量。

这是怎么回事?

有用的“类似问题”显示 that it is valid in C++总的来说,但它在这个精神表达中有什么作用呢?

最佳答案

这是一个递归定义,非常类似于this example with linked lists .构造了一个引用自身的语法规则。它之所以有效,是因为 operator* 通过 (const) 引用获取其参数。

关于c++ - 初始化表达式中使用的声明变量 - 含义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8094150/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com