gpt4 book ai didi

c++ - 我的类主要是容器的前端,我应该公开这个事实吗?

转载 作者:可可西里 更新时间:2023-11-01 17:59:28 28 4
gpt4 key购买 nike

在我的设计中,我有一个类主要是 std::vector<OtherClass> 的前端.我是否应该在我的类界面中将 std::iterator 交给任何调用者? , 交个引用全vector或者提供一组函数来访问我的 vector 的内容?或者完全不同地处理它?<​​/p>

更多信息:容器中的元素会在初始化时设置,程序正常运行时不会添加。我类的客户会经常查询和修改 OtherClass 的状态元素,尽管不是时间紧迫的方式。

最佳答案

您应该创建在内部修改 vector 的函数。原因如下:

根据编译器的不同,您可能正在运行不同版本的 STL(标准模板库),这可能会导致意外问题,假设它们可能会改变 std::vector 在旧版(或更新版)中构建时的运行方式) 版本的库并将其发送出去。

但是,我猜这不是一个库,也不是一个可能与其他编译器一起使用的项目。 只要您使用相同版本的 STL 运行和编译,您就可以安全地向 vector 发送引用或指针。

关于c++ - 我的类主要是容器的前端,我应该公开这个事实吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25731261/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com