std :: end如何在本机数组上工作

时间:2017-02-17 07:40:39

标签: c++ c++11

在Modern C ++中,我们可以在本机数组上使用std :: end。我想问一下如何理解这方面的性能考虑因素。

1 个答案:

答案 0 :(得分:1)

如果您有一个名为a且数量为N的数组,则std::end(a)a + N的含义相同。它不需要做任何运行时工作来查找数组的大小,因为大小在编译时是已知的。

请注意,std::end不适用于指针。它只能在尚未衰减到指针的数组上工作,因此大小信息静态存在于调用站点。