使用 stl::vector:
vector<int> v(1);
v[0]=1; // No bounds checking
v.at(0)=1; // Bounds checking
有没有办法禁用边界检查而不必全部重写at()
为[]
?我正在使用 GNU 标准 C++ 库。
编辑:我改为at()
在[]
我怀疑存在瓶颈的区域,它显着减少了计算时间。但是,由于我在开发代码和运行实验之间进行迭代,我想在开发期间启用边界检查,并在我真正运行实验时禁用它。我想安德鲁的建议是最好的解决方案。