C++引用集合
C++ reference collections
所以。。。你不能做一个引用数组,但你能构建一个处理引用、指针和值的集合吗?
Collection<Integer32*> a;
Collection<Integer32&> b;
Collection<Integer32> c;
这是我遇到的问题:
template <class ItemType> class Collection
{
public:
Collection(ItemType array[]); // or ItemType*, doesnt matter
protected:
ItemType* innerArray;
};
编译器说没有指向引用的指针。。。可能的
否-Collection<Integer32&> b;
无效,不能有引用集合。
剩下的是合法的——你的类应该编译。
像普通数组这样的标准容器不支持将引用作为值类型,但如果您创建自己的集合类型,则可以做到这一点。
在内部,集合必须将引用存储为可以复制和分配的内容。您可以使用普通指针,也可以查看std::reference_wrapper来获得这样的表示。
您可能需要对参考案例使用部分专业化。
相关文章:
- 将对象数组的引用传递给函数
- 处理多个异常集合的C++方法
- 什么时候在C++中返回常量引用是个好主意
- 给定n个元素的m个集合.在C++中找到出现在最大集合数中的元素
- 我想将一个对T类型的非常量左值引用绑定到一个T类型的临时值
- 何时在引用或唯一指针上使用移动语义
- 如何在c++中使用引用实现类似python的行为
- 编译C++时未定义的引用
- 如何将ampl中的集合表示为c++中的向量
- Ctypes wstring通过引用传递
- c++r值引用应用于函数指针
- 检查值是否在集合p1和p2中,但不在p3中
- 集合中的引用计数
- 在C++中,如何最好地解耦两个必须维护彼此引用集合的类
- 更好的std::在指针集合上查找,并将取消引用的值与常量引用值进行比较
- STL集合的去引用迭代器
- 返回对集合中unique_ptr的引用
- 迭代包含向量的集合,而不使用任何基于范围的循环或对向量的引用
- 当对集合的引用未更改时,我是否应该返回集合
- C++引用集合