关于 std vector map的问题

xrc791119 2008-10-30 03:42:48
我使用等号把一个类中的std map成员赋给另一个类的std map成员,我想知道的是这两个std map成员占用相同的内存空间吗?
...全文
127 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xrc791119 2008-10-30
  • 打赏
  • 举报
回复
多谢了
AlwaysSLH 2008-10-30
  • 打赏
  • 举报
回复
可以使用引用计数实现
boost中的shared_ptr就是一个不错的实作
帅得不敢出门 2008-10-30
  • 打赏
  • 举报
回复
自己实现这样的类
或者是维护一个公共的map链
类中用指针数组指向map组 相同的就指向同一个 不同的就各自指向
yshuise 2008-10-30
  • 打赏
  • 举报
回复
struct Map{

std::map<int,string> st;

};

Map a;
class A{
public:
A(){r = &a;}


private:
Map* rA;
};
class B{
public:
B(){rb = &a}
private:
Map* rb;
}
xrc791119 2008-10-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 yshuise 的回复:]
把 std::map 独立出来,两个类用同一份std::map即可
[/Quote]
你是说使用一个公共的类,然后做成static的形式?
yshuise 2008-10-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xrc791119 的回复:]
那我怎样将两个相同内容的std map只保留一份内容以节省空间,有个方法就是
将原先的std map清空,有没有更好的方法?
[/Quote]
把 std::map 独立出来,两个类用同一份std::map即可
xrc791119 2008-10-30
  • 打赏
  • 举报
回复
那我怎样将两个相同内容的std map只保留一份内容以节省空间,有个方法就是
将原先的std map清空,有没有更好的方法?
lala_benben 2008-10-30
  • 打赏
  • 举报
回复
不相同的空间。。

65,211

社区成员

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

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