你好,這是我第一次使用STL映射,我想知道如何添加一個新的條目到地圖。C++添加條目到一個字符串和一個Class實例作爲指針的STL映射
這裏是我的代碼:
map<string, Account *> accounts;
string key = "blah";
accounts[key] = Acc;
error: expected primary-expression before ‘;’ token
我應該要使用.insert()這樣的功能或者是這種方法一樣嗎?
你好,這是我第一次使用STL映射,我想知道如何添加一個新的條目到地圖。C++添加條目到一個字符串和一個Class實例作爲指針的STL映射
這裏是我的代碼:
map<string, Account *> accounts;
string key = "blah";
accounts[key] = Acc;
error: expected primary-expression before ‘;’ token
我應該要使用.insert()這樣的功能或者是這種方法一樣嗎?
在Acc後,*
確實沒有任何需要。編譯器已經知道它是一個指針,因爲你將它聲明爲一個指針。
map<string, Account *> accounts;
Account* Acc = ...;
string key = "blah";
accounts[key] = Acc; // Fine
謝謝你的答案,我實現了代碼,但我仍然有以下錯誤。 task3main.cpp:73:錯誤:初始化表達式列表被看作複合表達 task3main.cpp:73:錯誤:在初始化 這行帳戶不能轉換 '雙' 到 '帳戶*' * ACC(BSBt,accountt ,namet,addresst,phonet,openDatet,balancet); –
關於如何解決這個問題的任何想法? –
我想你應該顯示「帳戶」的確切內容 – TWE
我解決了以下
Account* Acc;
Acc = new Account(args);
問題是'ACC *;'一個錯字? – juanchopanza
@juanchopanza對不起 –
那麼'Acc'是在哪裏申報和初始化的? – juanchopanza