【发布时间】:2012-05-07 05:04:23
【问题描述】:
假设我有一个名为 People 的类。我将指向这些人的指针存储在地图中
map<string, People*> myMap;
要创建新人物,我使用 maps [] 运算符。
myMap["dave"]->sayHello();
但这给了我一个分段错误,它甚至没有调用 People 类的构造函数。
我也试过
myMap.insert( std::make_pair( "dave", new People() ));
但这并没有改变任何东西,构造函数仍然没有被调用,程序关闭处理这段代码并出现分段错误。
如何访问和操作带有指针的地图?为什么上述方法不起作用,我没有收到编译时错误或警告。
非常感谢任何见解,谢谢
【问题讨论】: