问题标签 [outofrangeexception]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
241 浏览

ios - segue 期间 NSArray 索引超出范围

如果通过某个路径到达启动视图控制器,我在 iPhone 应用程序中有一个 segue 崩溃。在这些情况下,当我尝试转到下一个屏幕时,我得到:

它发生在 prepareForSegue 返回之后但在目标视图控制器接管之前。据我所知,它当时在系统代码中。调用堆栈仅显示 main 和 UIApplicationMain。我难住了。有没有人见过这个?

0 投票
1 回答
486 浏览

c++ - C++ - 'std::out_of_range'

尽管我已经在程序的每个部分都包含了 try 代码,但我无法获得导致运行时错误的行(没有任何其他详细信息):

我不知道我应该做什么。该错误是由以下代码引起的,因为它出现在添加这些行之后:

后来:

0 投票
2 回答
70 浏览

c# - 线程和 IndexOutOfRange 异常

请注意,在当地人 i = 3

正如您可以清楚地看到 args[] 的最高索引是 2,但是迭代器以某种方式达到 3。解释?

编辑:评论的 Thread.Sleep 神奇地解决了这个问题。

0 投票
2 回答
5115 浏览

c++ - out_of_range、range_error 和 over/underflow_error 之间的区别?

range_error有人可以解释,out_of_range和一对overflow_errorand之间的区别是什么underflow_error,我什么时候应该使用它们?它们看起来都是一样的。

根据cppreference.com

  • out_of_range:它报告由于尝试访问超出定义范围的元素而导致的错误。
  • range_error:它报告由于某些计算中的浮点值太大或太小而无法表示而出现的错误。如果值是整数类型,std::underflow_error或者std::overflow_error应该使用。
  • overflow_error:它报告由于某些计算中的整数值具有太大的正值而无法表示而出现的错误。

具体来说,我有一个功能,

哪里T是整数类型;该函数对 进行一些边界检查n,以查看它是否在一定范围内;如果不是,我想抛出一些异常。我很困惑,因为:

  • out_of_range听起来像是用于索引和数组边界检查,我没有这样做。
  • range_error似乎是花车?(但是为什么,在像 C++ 这样的语言中呢?)
  • underflow_erroroverflow_error?这些真的合适吗?
0 投票
2 回答
1187 浏览

c++ - 在抛出一个'std :: out_of_range'实例后调用C++终止,字符串向量

运行时出现此错误:

在抛出 'std::out_of_range' what(): basic_string::substr 的实例后调用终止

问题出在这部分代码中,但我是全新的,我不明白应该如何解决这个问题。内容是我的字符串向量。

0 投票
1 回答
183 浏览

django - 为什么这个 django mptt 算法不能正确计算排名?列出索引

我正在尝试编写一个简单的算法来获得 django mptt 模型的“等级”。“等级”是指后代的级别数......类似于 MPTTModel.get_level() 但从叶到根计数。

我的方法如下:

视图.py

对于 rank >=3 的节点,我想创建一个 Node_set 并在它们都给定等级后返回一组节点。

我收到以下错误:

我在这里做错了什么?

0 投票
1 回答
1618 浏览

c++ - 矢量调整大小不起作用?

我有 3 个映射,其中一个字符串作为键,一个向量作为值。

我有一个函数可以调整它们的大小,调用 SetNum()

这一切似乎都有效,当说 setnum(1) 时,我得到一堆 1 作为输出。

现在问题出在这里,我有另一个函数叫做 Set

node_idx 为 0 并且找到了向量。但似乎调整大小不起作用,因为虽然我得到确认它已调整大小的输出,但我从 at 得到一个 out_of_range 异常,上面的行显示大小为 0。现在这很奇怪,因为我认为我成功地调整了它们的大小?

0 投票
3 回答
5144 浏览

magento - 当我尝试删除产品时,magento 出错

当我尝试在 Magento 中删除产品时,出现下一个错误,我不知道问题出在哪里。

SQLSTATE[22003]:数值超出范围:1690 BIGINT UNSIGNED 值超出范围

0 投票
4 回答
108 浏览

c++ - 尝试使用 for 循环 (C++) 创建和填充向量时出现超出范围的错误

我正在尝试创建一个向量,其中每个元素都是低于 1000 的 3 的倍数。我尝试了两种方法,其中只有一种有效。无效的方式是:

这给出了一个超出范围的错误,特别是在multiples_of_three[i]. 下一段代码起作用了:

因此,如果我定义了向量的大小,我可以将其保持在它的约束范围内。为什么如果我尝试让 for 循环指示元素的数量,我会得到超出范围的错误?

谢谢!

0 投票
1 回答
96 浏览

c++ - 由 string.at() 引起的 std::out_of_range 错误

我有这个代码:

当字符串中有两个字母时,我应该增加 variable wynik。我不知道为什么,但在这个例子中运行该代码:

4 4

阿巴

aaab

阿巴

巴巴

导致行中的std::out_of_range错误。string::atif(wiersze[i].at(j) == wiersze[i].at(j+1))wynik++;

我尝试调试并在循环中添加了两行以查看发生了什么。结果:

0 1

1 2 抗体

2 3

0 1

1 2

2 3

抗体

0 1

1 2

抗体

2 3

0 1

bb

1 2

2 3

请看最后两行 - 它准确地表明下一行计算的内容不存在!当然,我试图寻找“愚蠢”的错误和小调试,但没有任何结果,你可以在上面看到。请在我的情况下帮助我。