微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

即使迭代器远离数组的最小和最大边界,也会发生索引超出范围错误

如何解决即使迭代器远离数组的最小和最大边界,也会发生索引超出范围错误

很抱歉,可能是一个多余的问题。但是,在紧张了大约4个小时的调试并在许多堆栈溢出线程上搜索了这个问题之后,我才发布了这个问题。

如终端调试器所示:

  • 句子数组的大小或计数为519554
  • 错误恰好发生在迭代器计数312891上
  • 您还可以在终端中看到,访问 索引312892或312891。数据在那里。我可以打印它们 出来。我在这里找不到我的错误。请帮我解决这个问题。

enter image description here

解决方法

问题可能不是Objectsentences的访问,而是其他数组访问,其中您将元素放在分隔句子的索引处。您可能要在此处添加检查,这样无效的数据格式不会使您的代码崩溃,并且您可以执行一些错误处理/分析。您还可以看到索引312892上打印出来的句子中的一个'\ t'与控制台中打印出来的另一个't'有所不同,因此有意义的是它崩溃了,因为用“ \ t”分隔的句子只包含两个元素,而不是三个。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。