当前位置: 首页>>代码示例>>C++>>正文


C++ string_buffer::reset方法代码示例

本文整理汇总了C++中string_buffer::reset方法的典型用法代码示例。如果您正苦于以下问题:C++ string_buffer::reset方法的具体用法?C++ string_buffer::reset怎么用?C++ string_buffer::reset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在string_buffer的用法示例。


在下文中一共展示了string_buffer::reset方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: lookahead_newline

 bool lookahead_newline() {
     while (m_curr_char == ' ') {
         save_and_next();
     }
     if (m_curr_char == '\n') {
         next();
         m_line++;
         m_buffer.reset();
         return true;
     }
     if (m_curr_char == '#') {
         m_buffer.reset();
         m_prev_char = 0;
         read_comment();
         return true;
     }
     return false;
 }
开发者ID:EinNarr,项目名称:z3,代码行数:18,代码来源:datalog_parser.cpp

示例2: next_token

 dtoken next_token() {
     for(;;) {
         if (eos()) {
             return TK_EOS;
         }
         
         m_buffer.reset();
         switch (m_curr_char) {
         case '#': // comment
             read_comment();
             break;
         case '\n':
             next();
             m_line++;
             return TK_NEWLINE;
         case '\\':
             // here we ignore a newline if it is preceded by a backslash.
             // We need to take care, since anywhere else backshlash is used
             // as a regular character
             next();
             save_char('\\');
             if (lookahead_newline()) {
                 break;
             }
             return read_id();
         case '(':
             m_tok_pos = m_pos;
             next();
             return TK_LP;
         case ')':
             m_tok_pos = m_pos;
             next();
             return TK_RP;               
         case ',':
             m_tok_pos = m_pos;
             next();
             return TK_COMMA; 
         case '=':
             m_tok_pos = m_pos;
             next();
             return TK_EQ; 
         case '!':
             m_tok_pos = m_pos;
             next();
             if(m_curr_char == '=') {
                 next();
                 return TK_NEQ;
             }
             return TK_NEG; 
         case ':':
             m_tok_pos = m_pos;
             next();
             if (m_curr_char == '-') {
                 next();
                 return TK_LEFT_ARROW;
             }
             return TK_COLON;
         case '\"':
             return read_string();
         case '|':
             next();
             return read_bid();
         default:
             if (iswspace(m_curr_char)) {
                 next();
                 break;
             }
             else if (iswdigit(m_curr_char)) {
                 m_tok_pos = m_pos;
                 save_and_next();
                 return read_num();
             }
             else {
                 char old = m_curr_char;
                 m_tok_pos = m_pos;
                 save_and_next();
                 if (old == '-' && iswdigit(m_curr_char)) {
                     return read_num();
                 }
                 else {
                     return read_id();
                 }
             }
         }
     }
 }
开发者ID:EinNarr,项目名称:z3,代码行数:86,代码来源:datalog_parser.cpp


注:本文中的string_buffer::reset方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。