本文整理汇总了C++中CFG::clear方法的典型用法代码示例。如果您正苦于以下问题:C++ CFG::clear方法的具体用法?C++ CFG::clear怎么用?C++ CFG::clear使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CFG
的用法示例。
在下文中一共展示了CFG::clear方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
TEST_F(TestCFG, RecursionElimination) {
cfg << "<S> ::= <S>a|b";
CFG expected;
expected << "<S> ::= b<S'>";
expected << "<S'> ::= a<S'>|";
EXPECT_EQ(expected, cfg.withoutRecursion());
cfg.clear();
cfg << "<S> ::= <S><S>a|b<A>";
cfg << "<A> ::= b<B>c|<A>e|";
cfg << "<B> ::= <B>a|<B>b|c|d|";
expected.clear();
expected << "<S> ::= b<A><S'>";
expected << "<S'> ::= <S>a<S'>|";
expected << "<A> ::= b<B>c<A'>|<A'>";
expected << "<A'> ::= e<A'>|";
expected << "<B> ::= c<B'>|d<B'>|<B'>";
expected << "<B'> ::= a<B'>|b<B'>|";
EXPECT_EQ(expected, cfg.withoutRecursion());
// cfg.clear();
// cfg << "<S> ::= <A>a|a";
// cfg << "<A> ::= <B>b|b";
// cfg << "<B> ::= <S>c|c";
// expected.clear();
// expected << "<S> ::= <A>a|a";
// expected << "<A> ::= <B>b|b";
// expected << "<B> ::= bac<B'>|ac<B'>|c<B'>";
// expected << "<B'> ::= bac<B'>|";
// EXPECT_EQ(expected, cfg.withoutRecursion());
}