运行时错误:Vb 6.0中有28个堆栈空间

问题描述 投票:0回答:2

我在运行VB 6.0项目时出现堆栈空间错误。

据我所知,堆栈空间不足意味着不断将数据推送到堆栈上,当它充满时,堆栈没有更多的空间。

任何人都可以帮忙解决如何修复此错误?

在以下情形中出现此问题:我的代码中有大约20个属性获取和设置语句,当我的代码尝试分配值时,会出现此问题(比如第9个属性)

Public Property Get Language() As String
    Language = m_strLanguage
End Property

Public Property Let Language(ByVal strLanguage As String)
    m_strLanguage = strLanguage
End Property

我的代码进入递归循环。

vb6
2个回答
0
投票

你有一个导致递归循环的逻辑错误吗?你是否回顾了调用堆栈,看看为什么会发生递归循环?


0
投票

谢谢你的建议。你是对的 。我已经解决了问题,现在代码运行正常。

问题在于如何设置Let属性:我已经传递了错误的变量,现在已经更正了。

Public Property Let Language(ByVal strLanguage As String) 
   Language = strLanguage 
End Property 

这使代码进入递归循环,

正确的代码是:

Public Property Let Language(ByVal strLanguage As String) 
   m_strLanguage= strLanguage 
End Property 
© www.soinside.com 2019 - 2024. All rights reserved.