正向声明boost::multi_index_container对象
Forward declare a boost::multi_index_container object
我想知道如何转发声明boost::multi_index_container
已经有一段时间了。
在multi_index
目录中有multi_index_container_fwd.hpp
、ordered_index_fwd.hpp
等等。
它们应该对程序中不需要知道对象细节的部分隐藏实现,对吧?
然而,我想不出一种方法来单独用那些*_fwd.hpp文件声明multi_index_container
。
我一直包含完整的实现文件,multi_index_container.hpp
索引。
原则上,您应该能够通过使用适当的*_fwd.hpp
标头来转发声明依赖于multi_index_container
类型的函数。但并不是每种情况都可以这样处理:
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
的完整定义。
相关文章:
- 在提升multi_index容器中,是否定义了"default index"?
- DrawIndexedInstanced 具有不同的 Index Count per Instance (Directx
- 有没有办法使用递归函数找到数组中最小值的 INDEX?C++
- OpenGL VBO Indexing ( How to compute Index Array)
- "Warning: Comma within array index expression"但逗号分隔函数参数
- std::p mr::memory_resource 如何与 std::container 产生性能差异?
- 如何根据排序索引的向量对 std::index 集进行排序?
- 在一行代码中理解 index++
- C++ "oldstyle container ":指针/数组/新 - 可能误会?
- 在其他容器中使用 boost::container::static_vector 时,GCC 编译错误"将'const s'绑定到类型's&'的引用丢弃限定符"
- 为什么打印 c 样式字符串的'address of index n'会导致子字符串的输出
- 构造函数是否有一种现代C++方法来了解其'container'类?
- 使用 std::get 访问 std::variant<index>
- 代码中的"vector<<int>vector>&index"是什么意思?
- 为什么std::{container}::template不能推导其参数类型
- CStringArray::GetAt(int index) 返回一个 const. 为什么?
- 如何配置 Doxygen 以在"Class Index"中包含类的类型定义?
- boost::container::vector 无法用谷物序列化?
- 如何从 boost::container::vector<std::string>::iterator 访问索引和对象?
- 模板化函数以从输入参数推断返回类型 stl-container