运行时错误'6':Visual Basic

Pra*_*eep 1 vb6

我使用的是Visual Basic 6
我有以下代码结构:
FUNCNINFO是一个结构

Public funcTable() As FUNCNINFO
-----
------
ReDim Preserve funcTable(0 To upsize + ns)
Run Code Online (Sandbox Code Playgroud)

当(upsize + ns)的值超过32766时,它会给出运行时溢出错误'6'您是否知道原因和解决方案?

Ale*_* K. 7

VB6的Integer类型是16位,因此不能存储值> 32767,它Long是32位整数类型,因此以下将起作用;

Dim upsize As Long
Dim ns As Long

upsize = 32766
ns = 12345

ReDim Preserve funcTable(0& To upsize + ns)
Run Code Online (Sandbox Code Playgroud)

  • 它们也不在我的例子中,如果它们都被声明为整数(或根本没有声明),则抛出错误6溢出 (2认同)