我有一个具有以下属性的动态数组:
现在问题是我最初在Entry中通过引用存储了Value。但是,我当时不能使用operator=
。但我也无法按价值存储。而且我不想存储指针,因为这会破坏整个目的。我现在看到的唯一选择是在被删除的条目上调用placement new,并从最后一个元素调用它的复制构造函数。这将让我通过引用保持价值。有什么建议?或者我应该注意的陷阱?
答案 0 :(得分:0)
我不明白为什么按指针存储与通过引用存储有什么不同。你可以获得重新分配的优势,你说你需要。
引用的唯一优点是它不能为null,但没有人会直接访问它。您仍然可以在API中使用引用,因此无法传入空值。