乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 75|回复: 6

集合类无明显原因清空

[复制链接]

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2006-7-30 17:21:53 | 显示全部楼层 |阅读模式
您好,在我编写的一个应用程序中,我有一个收集类。在一个子集和下一个子集之间,集合从应有的成员变为无成员-这应该是'不可能!在这两者之间没有对集合做任何事情的代码。令人恼火的是,以前的应用程序可以工作,然后我做了一些更改,但它没有#039;t、 我可以一行一行地回去比较修改过的subs,幸运的是,zip文件中有一个旧版本,但在最初的阅读中,我没有发现任何可能导致这种情况的因素。如果能提出任何关于这种行为可能原因的建议,以及需要探索的事情,我将不胜感激,因为现在这让我感到困惑
谢谢Jon
回复

使用道具 举报

0

主题

7

帖子

4

银币

初来乍到

Rank: 1

铜币
8
发表于 2006-7-30 17:36:29 | 显示全部楼层
本人'm不支持vba,但集合是否静态(共享)
同样,如果你从一个子类转到另一个子类,可能你的类超出了范围并被摧毁了??
回复

使用道具 举报

0

主题

7

帖子

4

银币

初来乍到

Rank: 1

铜币
8
发表于 2006-7-30 17:39:18 | 显示全部楼层

是在类内还是在外部模块中?如果external是从一个子类传递到另一个子类的类实例,它是一个成员变量(可能在其中一个子类中声明为局部变量),它是全局的吗?此外,您是否在任何地方授予对该类的外部访问权限,例如--
  1. Public Function GetCol () as Collection
  2.     Set GetCol = myCollection
  3. End Function
  1. Public Property Get NewEnum() As IUnknown
  2.     Set NewEnum = myCollection.[_NewEnum]
  3. End Property
等等
没有尸体很难做验尸(代码后)
回复

使用道具 举报

0

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2006-7-31 12:03:53 | 显示全部楼层
本人'我很确定这与存储集合类的变量的范围有关 请密切注意该变量何时初始化以及何时销毁。
回复

使用道具 举报

0

主题

8

帖子

5

银币

初来乍到

Rank: 1

铜币
9
发表于 2006-7-31 12:06:43 | 显示全部楼层
特别要注意的是,如果为集合类定义了一个全局变量,并且在子或函数内声明了一个同名变量,则第二个(局部)变量用于该子或函数中的所有内容,并在子或功能完成时被销毁。
回复

使用道具 举报

0

主题

9

帖子

3

银币

初来乍到

Rank: 1

铜币
11
发表于 2006-8-4 15:55:39 | 显示全部楼层
谢谢你的建议。问题已解决-我已成功申报了两次收藏;一个是普通模块中的公共模块(这是我想要的,因此所有应用程序都可以访问它,另一个是类模块中的私有模块-这是令人不快的一句话,一旦删除,它就会正常工作。再次感谢您的帮助。Jon
回复

使用道具 举报

0

主题

7

帖子

4

银币

初来乍到

Rank: 1

铜币
8
发表于 2006-8-5 09:52:38 | 显示全部楼层
很高兴你把它整理好了,尽管我毫无疑问给了你同名的、聪明的lil;格罗米特是个家伙
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-6 03:25 , Processed in 1.196733 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表