摘要: 最近无事在看书的时候发现了这个东西刹那间突然觉得大学时候编译原理书上的的什么语法分析书、上下文无关等晦涩难懂的概念清晰了许多今天把它贴出来希望也能让你回想起些往事。。。至于EBNF范式是什么东西,网上有详细的介绍,在此就不作赘述。在这里,使用EBNF范式来实现一个简单算术运算的语法描述,然后用C语言实现。该算术运算要实现的功能:(1)能够进行加法、乘法运算,且乘法优先于加法运算(2)实现'('、')'运算,且其优先级高于乘法运算使用EBNF范式修改后的简单整数算术运算的语法描述:expr-->expr+term|termterm-->term*fac 阅读全文
posted @ 2013-10-16 10:15 FREE小宝 阅读(1547) 评论(0) 推荐(0) 编辑
摘要: 典型的迭代器失效....vector:1.当插入(push_back)一个元素后,end操作返回的迭代器肯定失效。2.当插入(push_back)一个元素后,capacity返回值与没有插入元素之前相比有改变,则需要重新加载整个容器,此时first和end操作返回的迭代器都会失效。3.当进行删除操作(erase,pop_back)后,指向删除点的迭代器全部失效;指向删除点后面的元素的迭代器也将全部失效。deque迭代器的失效情况:1.在deque容器首部或者尾部插入元素不会使得任何迭代器失效。 // !!!此句话不对2.在其首部或尾部删除元素则只会使指向被删除元素的迭代器失效。3.在deque 阅读全文
posted @ 2013-10-16 09:32 FREE小宝 阅读(587) 评论(0) 推荐(0) 编辑