首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >创建STXXL映射时增加不可复制错误

创建STXXL映射时增加不可复制错误
EN

Stack Overflow用户
提问于 2013-10-08 01:39:49
回答 1查看 162关注 0票数 0

我一直在做一些STXXL的工作,我遇到了一些问题,地图继承从boost::不可复制.对于这个项目,我用下面的语句创建了几个映射:

stxxl::map<int, mapData, CmpIntGreater, 4096, 4096> node_map((stxxl::unsigned_type)(4096 * 4), (stxxl::unsigned_type)(4096 * 3));

不用说,一旦解决了这个问题,构造函数中的硬编码值将被替换,但无论如何,我会得到错误:

C2248: 'boost::noncopyable_::noncopyable::noncopyable' : cannot access private member declared in class 'boost::noncopyable_::noncopyable'

有没有其他人在STXXL地图上遇到过这个问题?或者,在使用不可复制的对象时,有人有一些一般性的建议或最佳实践吗?

谢谢你们的帮助:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-08 15:54:51

为了在这里添加一个正式的答案来接受,我的问题是,我有一些函数按值返回映射,还有一些函数参数通过值传递。一旦这个修好了,它就像一种魅力!因此,故事的寓意是,当使用继承自不可复制的STXXL版本时,确保STXXL对象的所有实例仅通过引用而不是通过值与您的函数一起使用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19237684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档