写一个像Vector.at()的方法

eki*_*iim 0 c++ structure vector

我想知道.at()方法是如何工作的,就像C++的Vector类中的方法一样,这两种方法都返回和/或为数组成员赋值.我不知道用宏可以做到这一点,或者声明同名的2方法......有什么帮助吗?

我一直试图找到并打开矢量文件,看看它是如何编写的,具体方法,但我还没有找到它.

(它用于我正在构建的不同结构,但我想只使用一种方法访问它们)

我的意思的例子.

vec.at(x) = value;
newValue = vec.at(x);
Run Code Online (Sandbox Code Playgroud)

ACB*_*ACB 5

您必须返回对该值的引用.而不是

int at(int idx)
Run Code Online (Sandbox Code Playgroud)

你这样做

int& at(int idx)
Run Code Online (Sandbox Code Playgroud)

引用与指针非常相似,区别在于您不能也不必取消引用它们以便操作它们引用的值