由於Visual Studio 2008(使用Windows窗體應用程序)上的C++/Cli,我使用了無序地圖指針,但我無法爲其指定值,拋出一個錯誤,因爲我的代碼示例展示給在創建實例後將值指定給unordered_map指針
//...
public ref class Login: public System::Windows::Forms::Form
{
public:
unordered_map< std::string, std::string >* Accounts;
Test(void)
{
this->Accounts = new unordered_map<std::string, std::string>();
this->Accounts["hello"] = "test"; // The Error is in this line, this is the line 37
cout << this->Accounts["hello"];
InitializeComponent();
//
//TODO: Add the constructor code here
//
}
//...
錯誤:我希望我的代碼是很清晰,所以你可以想像它
Error 4 error C2107: illegal index, indirection not allowed C:\Projects\Test\Login.h 37
。
在此先感謝。
你真的需要'Accounts'是一個指針? – 2012-03-29 13:59:28
我這樣做是因爲在C++/CLI中,它們不允許你設置它而不用指針。 – Grego 2012-03-29 14:31:57