gpt4 book ai didi

c++ - operator[] - 我为什么不使用它?

转载 作者:行者123 更新时间:2023-11-30 04:17:46 26 4
gpt4 key购买 nike

有人告诉我使用 operator[] 是错误的。

有什么区别:

vector<double> * IDs;
...
IDs->operator[](j) = 1;

和:

vector<double> * IDs;
...
(*IDs)[j] = 1;

最佳答案

什么都没有,它们是等价的。

不过有两件事

1) IDs->operator[](j)不如(*IDs)[j]清楚.

2) 如果可以使用const vector<double>& IDs相反,您不仅会受益于更清晰的 IDs[j]但您也可以通过无法使用 IDs 修改 vector 这一事实获得稳定性.

请记住,总有一天您的代码将由能力不如您的人维护,因此清晰度很重要。

关于c++ - operator[] - 我为什么不使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16831731/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com