`

VB6-没办法的对象Wrapper

 
阅读更多

请先看下边得代码:

'Interface Command
Public Sub Execute(): End Sub

'TestCommand
Implements VB6DPFrameWork.Command

Public Count As Integer

Private Sub Command_Execute()
    Count 
= 1
End Sub

'CommandWrapper
Private mSelf As TestCommand

Private mInterface As VB6DPFrameWork.Command

Public Sub Dispose()
    
Set mSelf = Nothing
    
Set mInterface = Nothing
End Sub

Public Sub Instance()
    
If mInterface Is Nothing Then
        
Set mInterface = New TestCommand
        
Set mSelf = mInterface
    
End If
End Sub

Public Function Interface() As VB6DPFrameWork.Command
    Instance
    
Set Interface = mInterface
End Function

Public Function Self() As TestCommand
    Instance
    
Set Self = mSelf
End Function

'TestCase
Public Sub Test_Wrapper(oTestResult As TestResult)
    
With oTestResult
        
Dim w As New CommandWrapper
        w.Interface.Execute
        .AssertEqualsLong w.Self.Count, 
1
        
Set w = Nothing
    
End With
End Sub

TestCommand继承了Command接口,如果采用
dim t as command的方式,将不能访问Count属性。
如果采用
dim t as testcommand方式,将不能访问Execute方法。

这样用起来就很难受,当然,如果在TestCommand中实现一个Public的Execute当然可以,但是就不好了,也可以声明多个对象,然后进行赋值,这样也不好,为了解决这个问题,使用CommandWrapper也许就是一个好的选择了,至少使用起来要好一点。

分享到:
评论

相关推荐

    dm8-oracle-jdbc16-wrapper.jar

    dm8-oracle-jdbc16-wrapper.jar

    react-native-charts-wrapper图表库页面布局使用案例

    在React Native开发中,我们经常会遇到需要展示数据图表的需求,这时`react-native-charts-wrapper`库就显得尤为重要。这个库是专门为React Native设计的一个图表组件,支持多种图表类型,如线图、柱状图、饼图等,...

    vue-web-component-wrapper:将Vue组件包装为Web组件自定义元素

    @ vue / web-component-wrapper 包装并将Vue组件注册为自定义元素。兼容性。 不支持IE11及以下版本。...用法dist/vue-wc-wrapper.js :此文件为ES模块格式。 这是捆绑程序的默认导出,可以在带有<script type="mo

    zed-ros-wrapper_zed_ROS_zedros_

    zed-ROS-wrapper是针对ZED相机在Robot Operating System (ROS)环境中的一个集成包,它使得用户能够方便地在ROS框架下使用ZED相机的功能。ZED相机是一款由StereoLabs公司生产的立体视觉相机,它提供了高精度的深度...

    wrapper-linux-x86-64-3.5.55 社区版

    《wrapper-linux-x86-64-3.5.55 社区版:Linux环境下的Java Wrapper技术详解》 在IT行业中,特别是在服务器管理和软件部署领域,Wrapper技术扮演着重要的角色。本篇将深入探讨"wrapper-linux-x86-64-3.5.55 社区版...

    segment-anything-cpp-wrapper-main

    标题“segment-anything-cpp-wrapper-main”提示我们这是一个与C++相关的项目,主要涉及图像处理中的物体分割功能。描述中的信息同样简洁,可能是项目主文件或入口点的名称。从标签“图片物体分割”我们可以推测,这...

    zed-ros-wrapper-master.zip

    zed-ros-wrapper-master.zip这个压缩包文件,是专门为zed相机设计的ROS(Robot Operating System)接口软件包,适用于ROS Melodic和Kinetic两个版本。zed相机,全称为Stereo Camera ZED,由瑞士公司SwissRadar开发,...

    Api-airtable-python-wrapper.zip

    Api-airtable-python-wrapper.zip,python airtable客户端wrapperairtable python包装器,一个api可以被认为是多个软件设备之间通信的指导手册。例如,api可用于web应用程序之间的数据库通信。通过提取实现并将数据...

    wrapper-windows-x86-64-3.5.14-windows系统服务打包,64位可用

    标题中的"wrapper-windows-x86-64-3.5.14-windows系统服务打包,64位可用"指的是一个特定版本的Java可执行包装器(Wrapper),它用于将Java应用程序转换为Windows服务,以便在操作系统启动时自动运行。这里的"3.5.14...

    redux-auth-wrapper:一个React高阶组件(HOC),用于处理通过路由和Redux进行的身份验证和授权

    redux-auth-wrapper 使您的身份验证和授权与组件脱钩! npm install --save redux-auth-wrapper redux-auth-wrapper是一个实用程序库,用于在react + redux应用程序中处理身份验证和授权。 阅读位于的文档版本3 版本...

    Python库 | meson-cmake-wrapper-0.3.0.tar.gz

    `meson-cmake-wrapper-0.3.0.tar.gz`是一个Python库,它的目标是解决在项目中同时使用Meson和CMake构建系统时的兼容问题。通过提供对两者之间的接口封装,它使开发者能够在享受Meson的高效性和CMake的广泛支持之间...

    前端开源库-happn-primus-wrapper

    通过解压缩的文件“happn-primus-wrapper-master”,我们可以看到源代码的组织结构,了解其内部实现原理,并根据项目需求进行定制和扩展。 总的来说,happn-primus-wrapper是将Primus的实时通信能力与happner的系统...

    zookeeper-3.4.5,metamorphosis-server-wrapper

    《Zookeeper 3.4.5与Metamorphosis Server Wrapper深度解析》 在IT行业中,Zookeeper和Metamorphosis作为重要的分布式中间件,扮演着数据协调和消息队列的关键角色。本篇将深入探讨Zookeeper 3.4.5版本以及与其相关...

    PyPI 官网下载 | ucloud-storage-python-wrapper-0.0.8.tar.gz

    "PyPI 官网下载 | ucloud-storage-python-wrapper-0.0.8.tar.gz" 这个标题揭示了我们正在讨论的是一个通过Python Package Index (PyPI) 下载的软件包,具体是`ucloud-storage-python-wrapper`的版本0.0.8。...

    react-native-echarts-wrapper:React强大的React-Native ECharts包装器:bar_chart:

    react-native-echarts-wrapper v2.0.0 用于 / Apache ECharts(正在孵化)包装器构建。 •• 适用于流行的echarts图表框架的React Native包装器。 使用此库,您可以在移动设备上创建性能出色的复杂交互式图表。 ...

    java-atk-wrapper-0.30.4-5.el7.x86_64.rpm

    离线安装包,亲测可用

    Laravel开发-predictionio-laravel-wrapper

    **Laravel 开发与 PredictionIO-Laravel-Wrapper 深度解析** 在现代Web开发中,Laravel作为一款流行的PHP框架,以其优雅的语法、强大的功能和高效的开发流程深受开发者喜爱。而PredictionIO-Laravel-Wrapper是专门...

    SCORM-to-xAPI-Wrapper, SCORM一起使用的APIWrapper.js 文件,内嵌embedded调用.zip

    SCORM-to-xAPI-Wrapper, SCORM一起使用的APIWrapper.js 文件,内嵌embedded调用 SCORM-to-xAPI-Wrapper这个项目包含修改的SCORM版本 1.2 APIWrapper.js 文件,一个修改的SCORM 2004 APIWrapper.js 文件和一个新的...

    react-signature-pad-wrapper:一个用于签名板的React包装器

    安装该软件包可通过npm获得: npm install --save react-signature-pad-wrapper用法此程序包实现与原始signature_pad程序包完全相同的接口,并添加了几个额外的功能,这些功能使响应行为更易于处理。 有关可用选项和...

Global site tag (gtag.js) - Google Analytics