如果我有一個載體,最佳方式對象
std::vector<int> MyVector;
而且要訪問矢量的第n個元素,我可以在許多不同的方式做到這一點:
int x = MyVector[n];
或
int x = MyVector.at(n);
甚至使用我不熟悉的迭代器。
我相信還有很多方法可以訪問矢量中的對象。我所問的是,每個人的贊成和反對是什麼,因此哪種方法是最好的。
此外,有任何這些safeif benifets?如果不是爲什麼任何人會在[x]上使用.at(x)?
@MrLister,我不太確定他們是否會被優化掉,因爲'at()'廣告邊界檢查,而'operator []'沒有。從使用'at()'的代碼中刪除邊界檢查將是一個潛在的突破性優化。儘管看看這個組件,但這真是太棒了! – Alejandro