我正在尝试将 C 库连接到我的 C++ 项目。该库有自己的向量类型,假设为VECTOR
,并提供元素访问:
int vector_set_value(VECTOR* vec, int index, double new_value);
int vector_get_value(VECTOR* vec, int index, double* retrieved_value);
现在最好通过 operator[] 重载包装get
and操作set
double& operator[](int index);
const double& operator[](int index) const;
但是我如何告诉 operator[] 在vec[index]=3
和之间有不同的行为double value=vec[3]
?应该调用前一个,而应该vector_set_value
调用后者vector_get_value
。