gpt4 book ai didi

c++ - 转发声明一个 boost::multi_index_container 对象

转载 作者:行者123 更新时间:2023-11-30 04:16:01 24 4
gpt4 key购买 nike

一段时间以来,我一直在想如何转发声明一个boost::multi_index_container

multi_index目录下有multi_index_container_fwd.hppordered_index_fwd.hpp等。

它们应该对不需要知道对象细节的程序部分隐藏实现,对吧?

但是,我想不出一种方法来单独使用那些 *_fwd.hpp 文件来声明 multi_index_container

我一直包含完整的实现文件,multi_index_container.hpp 索引。

最佳答案

原则上你应该能够转发声明,例如,依赖于 multi_index_container 的函数。使用适当的 *_fwd.hpp 输入标题。但并不是所有情况都可以这样处理:

class A{
...
private:
multi_index_container<...>* p; // can use *_fwd.hpp headers
};

class B{
...
private:
multi_index_container<...> m; // needs full headers!!
};

这里的 Boost.MultiIndex 没有什么特别之处:每当您声明类型为 T 的变量时在编译时需要知道其大小,您必须具有 T 的完整定义到位。

关于c++ - 转发声明一个 boost::multi_index_container 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17937604/

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