相关疑难解决方法(0)

在VB6中分配对象

我试图通过赋值语句在VB6中创建两个相同的对象; 像这样的东西......

Dim myobj1 As Class1
Dim myobj2 As Class1

Set myobj1 = New Class1
myobj1.myval = 1
Set myobj2 = myobj1
Run Code Online (Sandbox Code Playgroud)

很明显,这不会创建两个对象,而是两个对同一对象的引用,这不是我所追求的.有没有办法以这种方式创建第二个对象,或者我是否必须一次复制一个成员对象...

Set myobj2 = new Class1
myobj2.mem1 = myobj1.mem1
...
Run Code Online (Sandbox Code Playgroud)

编辑2斯科特·惠特洛克已经更新了他的优秀答案,我已将他的更改纳入这个现在正在运行的代码片段中.

Private Type MyMemento
     Value1 As Integer
     Value2 As String
End Type

Private Memento As MyMemento

Public Property Let myval(ByVal newval As Integer)
Memento.Value1 = newval
End Property

Public Property Get myval() As Integer
myval = Memento.Value1
End Property

Friend Property Let SetMemento(new_memento As MyMemento)
    Memento …
Run Code Online (Sandbox Code Playgroud)

vb6 class

26
推荐指数
1
解决办法
2万
查看次数

标签 统计

class ×1

vb6 ×1