0
我目前正在爲後綴轉換器編寫一箇中綴。它工作得很好,除了我將堆棧的其餘部分添加到後綴時遇到問題。該堆棧是String :: push_back()不推回
vector<char>
並且後綴是字符串。讀完所有東西后,我嘗試以下內容:
while (!stack.empty()) {
postfix.push_back(stack.back());
stack.pop_back();
}
但是沒有附加任何內容。我甚至用Debug-mode試過,看起來很好,但沒有任何附加內容。
std::cout << postfix.c_str();
從堆棧中排除最後一個運算符。我甚至試圖暫時保存它,但它不會被推送。
由於限制,我無法在pastebin中發佈所有四個文件。我使用Visual Studio 2010 Ultimate,並且沒有錯誤,只是沒有附加字符。
'stack'是一個向量? – WeaselFox 2012-03-20 14:17:10
你什麼意思是沒有附加任何東西? 'cout << postfix'不顯示任何東西?或者你是否試圖以其他方式評估postfix的內容?提供樣品輸入,提供更多的代碼等等等等 – 2012-03-20 14:17:17
添加反映行爲的示例代碼 – 2012-03-20 14:17:43