|
悬赏1金钱未解决
动态数组中存放自定义类时,大量操作后似乎这个自定义类的地址变动了
1、我尝试将一个常用的功能封装成了类(这个类定义我放在了另外一个共用的 .xc文件中)
2、然后将一堆数据封装成了一个结构体,
3、我尝试创建一个类型为上述结构体的动态数组(结构体声明和数组声明及调用放在一起,同一个.xc文件中),并尝试动态的赋值和调用 数组[x].自定义类.方法X()
但是我发现似乎刚生成是可以正常调用,去操作一些其他事件之后,再回头来调用就似乎会导致动态数组中的自定义类的地址变动,进而导致程序无法正常进行,且程序将崩溃。
具体报错形如:【错误: 线程尝试读取不可访问的数据, 错误码: 0xC0000XXX,线程ID: XXXXX, 异常地址: 0x0000XXX, 不可访问虚拟地址: 0x0000XXX;*可查看[调用堆栈]定位错误位置】
请问应该如何这个问题呢?
- 结构体 部件信息
- 文本型 部件名称
- 文本型 要求列表
- 文本型 计价规则
- 文本型 图片列表
- 文本型 注意事项
- 详细信息类 详细信息
复制代码- 类 详细信息类
- 私有
- 文本型 _标题前缀
- 布局框架类 绘制目标
- JSON对象 JS对象
- 整型 基础对象数
- 整型 内容高度 = 30
- 整型 活动组件标记
- 逻辑型 启用编辑
- // 根据组件JSON动态创建组件,并返回组件句柄给
- 函数 事件 整型 绑定热键(元素句柄 来源句柄, 附加参数1 wParam, 附加参数2 lParam, 逻辑型* 是否拦截)
- 处理常用热键(来源句柄, wParam)
- 返回 0
- 函数 事件 整型 处理鼠标左键双击事件(元素句柄 来源句柄, 正整型 标识, 点结构* 鼠标位置, 逻辑型* 是否拦截)
- //如果处于编辑商品界面,则推送信息到对应组件
- 如果 (启用编辑)
-
- 文本型 当前运算名 = A2W_(JS对象.取成员对象(活动组件标记).取对象(A"运算名").取文本值())
- 如果 (当前运算名 == "")
- 消息框("当前前组件没有运算名,请先设置一下吧", "添加失败")
- 返回 0
- 否则
- 元素句柄 代码编辑框句柄 = (元素句柄)炫彩_取对象从名称(_标题前缀 + "运算逻辑_代码编辑框")
- 如果 ((整型)代码编辑框句柄 != 0)
- 编辑框_插入文本(代码编辑框句柄, 编辑框_取当前行(代码编辑框句柄), 编辑框_取当前列(代码编辑框句柄), "[" + 当前运算名 + "]")
- //窗口_置焦点(取窗口句柄(取HWND(), 0), 代码编辑框句柄)
- 窗口_置焦点(窗口组件_取窗口句柄((炫彩句柄)代码编辑框句柄), 代码编辑框句柄)
- 返回 0
复制代码
|
|