map 类型的变量如何拷贝复制?

NewCenturyNewPage 2004-10-14 05:07:27
我定义了一个类:

class MyClass
{
public:
map<int,string> MyMap;
...
}

在主程序里面进行了如下调用:

void main()
{
MyClass ExClass;

// 这里对ExClass 进行初始化赋值其map成员变量MyMap
......

map<int,string> mykey;
mykey.empty();

// 赋值,难道这样复制赋值错了?
mykey = ExClass.MyMap;

map<int,string>::iterator it;
printf("\nItem count=%d",mykey.size());
// 程序运行到这里,发现mykey 的成员个数为0 ???
// 但是在 MyClass 里面可以测试到 其成员MyMap的元素个数不为0 啊,怎么回事???
// 哪出错了?
}
...全文
1036 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
NewCenturyNewPage 2004-10-14
  • 打赏
  • 举报
回复
问题解决了,上面的都没错,错在我的类初始化以后,在取值时出错了,不过不关这里的事了。
NewCenturyNewPage 2004-10-14
  • 打赏
  • 举报
回复
其实我就是觉得是map类型的变量相互之间赋值是否有错了?

mykey = ExClass.MyMap;

好像不对。
hamburger1981 2004-10-14
  • 打赏
  • 举报
回复
一步一步来F11,不要着急啊
hamburger1981 2004-10-14
  • 打赏
  • 举报
回复
// 赋值,难道这样复制赋值错了?
mykey = ExClass.MyMap;
难道这里没报错?map好像没有operator=()成员
  • 打赏
  • 举报
回复
好像没问题.

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧