gpt4 book ai didi

vb6 - VB6中的多个构造函数?

转载 作者:行者123 更新时间:2023-12-04 13:34:50 26 4
gpt4 key购买 nike

vb6可以有多个构造函数吗?我问的原因是因为我看到类初始化,但我不知道我是否可以将 0 个或更多参数放入构造函数中,或者 class_initialize 是否是构造函数并且它可以接受任意数量的参数。它令人困惑主要是因为我对 c# 非常熟悉,所以就类而言,去 vb6 是令人困惑的。

最佳答案

Class_Initialize是一个在类的实例被实例化后总是被调用的事件。它无法与 C# 构造函数相比。

例如,注意 Class_Initialize创建为 Private ,而不能实例化具有私有(private)构造函数的 C# 类。

虽然您可以更改 VB6 Class_Initialize来自 Private 的事件至Public没有什么意义:因为无论如何都会在实例化时调用该事件,所以您为什么要第二次显式调用它? (如果你这样做了,最好有一个从 Class_Initialize 事件调用的公共(public)方法。)

无法将参数添加到 VB6 Class_Initialize事件,甚至没有 Optional那些。尝试这样做会导致编译错误。

你能做的最好的就是自己动手Initialize方法,根据需要带有参数,必须显式调用,可能有一个内部标志 isInitialized状态变量以确保在 Initialize 之前不使用该类方法已被调用。还可以考虑一种“工厂”方法:PublicNotCreatable 的类与 Friend Initialize由工厂调用并提供给适合初始化的调用者的方法。

关于vb6 - VB6中的多个构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5332001/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com