【发布时间】:2016-04-03 22:01:17
【问题描述】:
由于某种原因,我无法在我的 unordered_map 中编辑值,并且想知道我做错了什么。
在下面的代码中,parameter是一个结构体。由于某种原因,以下代码抛出了语法错误,不喜欢 [.
void MyClass::setParameter(string name, parameter param) {
if (this->param_name_to_data == nullptr) {
//create it lazily
this->param_name_to_data = new unordered_map<string, parameter>();
}
this->param_name_to_data->[name] = param;
}
对应的.h文件中声明的字典id为:
private:
std::unordered_map<std::string, parameter> * param_name_to_data = nullptr;
我做错了什么?
【问题讨论】:
-
动态分配
unordered_map有什么原因吗? -
我可能会切换到静态分配。
标签: c++ std unordered-map