我目前正在编写一个中缀到后缀转换器。它工作得很好,除了我在将堆栈的其余部分添加到后缀时遇到问题。堆栈是一个
vector<char>
后缀是一个字符串。阅读完所有内容后,我尝试以下操作:
while (!stack.empty()) {
postfix.push_back(stack.back());
stack.pop_back();
}
但是没有附加任何内容。我什至用调试模式尝试过它,它看起来很好,但没有附加任何内容。
std::cout << postfix.c_str();
从堆栈中省略最后一个运算符。我什至试图暂时保存它,但它没有被推送。
由于限制,我无法在 pastebin 中发布所有四个文件。我使用 Visual Studio 2010 Ultimate,没有错误,只是没有附加字符。