我想std::vector
从具有以下属性的方法返回一个:接收者(用户)将能够编辑向量中的元素,但不能更改向量本身(调整大小、删除、添加等)
- 如果我返回 a
std::vector<T>&
,接收者将能够调整它的大小、添加元素等等。 - 如果我返回一个
std::vector<T> const&
(我声明对了吗?),他们将无法更改元素。 - 如果我返回
std::vector<T>
,它将是一个全新的向量,并且对元素的更改不会在原始向量中。
有没有办法做到这一点?也许是引用的 vetor,以 const ( std::vector<T&> const
) 形式返回?甚至有这样的事情吗?如果有,它可以隐式地将 my 转换std::vector<T>
为它吗?