我在C++編寫的小程序:堆棧與嵌套地圖
#include <stack>
#include <map>
#include <string>
using namespace std ;
int main() {
stack< map<string,int> > st ;
map<string,int> ma ;
st.push(ma) ;
ma = st.pop() ; // error here
return 0 ;
}
但是,編譯器顯示錯誤:
no match for ‘operator=’ in ‘ma = st.std::stack<_Tp, _Sequence>::pop<std::map<std::basic_string<char>, int>, std::deque<std::map<std::
basic_string<char>, int>, std::allocator<std::map<std::basic_string<char>, int> > > >()’
有誰知道什麼是錯用此代碼?
請確保您在發佈此類問題之前已詳細研究過圖書館參考資料。這是所有[*非常*有據可查](http://en.cppreference.com/w/cpp/container/stack/pop)。 –
對不起,我應該刪除這個問題嗎? –
由你決定。它肯定有很多重複的東西,並且問題標題對其他人來說不太可能有幫助。 –