rem: fTokens.push_back(string(buffer + tokenStart, buffer + len));
add: line.push_back(string(buffer + tokenStart, buffer + len));   if (line.size() >= 2) { if (line[0] == "#" && isdigit(line[1][0])) return; } for (int i = 0; i < (int)line.size(); i++) fTokens.push_back(line[i]);
context: 	void _ReadLine()	{		// read the line		char buffer[10240];		if (!fInput.getline(buffer, sizeof(buffer)))			throw EOFException("Unexpected end of input.");		// parse it		int len = strlen(buffer);		int tokenStart = 0;		for (int i = 0; i < len; i++) {			char c = buffer[i];			if (isspace(c)) {				if (tokenStart < i)					fTokens.push_back(string(buffer + tokenStart, buffer + i));				tokenStart = i + 1;				continue;			}			switch (buffer[i]) {				case '#':				case '(':				case ')':				case '*':				case '&':				case '[':				case ']':				case ';':				case ',':					if (tokenStart < i) {						fTokens.push_back(string(buffer + tokenStart,												 buffer + i));					}					fTokens.push_back(string(buffer + i, buffer + i + 1));					tokenStart = i + 1;					break;			}		}		if (tokenStart < len)			fTokens.push_back(string(buffer + tokenStart, buffer + len));	}