gpt4 book ai didi

c++ - 自动检查 std::vector 中的边界

转载 作者:可可西里 更新时间:2023-11-01 15:09:55 30 4
gpt4 key购买 nike

<分区>

在使用 std::vector 的类的积极开发过程中,经常会发生索引越界的情况。 (有关实际示例,请参见 this code review question。)使用 operator[] 时,这会导致未定义的行为。不过,[] 语法易于阅读,比编写 .at() 更方便。

因此我想使用 [] 运算符编写我的代码,但同时启用了边界检查。测试代码后,删除边界检查应该非常容易。

我正在考虑以下代码:

util::bound_checked<std::vector<int>> numbers;

numbers.push_back(1);
numbers.push_back(2);
numbers.push_back(3);
numbers.push_back(4);
std::cout << numbers[17] << "\n";

对我来说,这个实用程序模板似乎非常简单,我希望它存在。可以?如果有,用什么名字?

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