我有以下(大大简化了)VB.Net代码:
import sympy as sp
from IPython.display import display
X = sp.Matrix([[1, 1, 1], [2, 2, 2], [3, 3, 3]])
i = sp.Matrix([[1], [1], [1]])
display(i, X)
Z = sp.BlockMatrix([i.T*i, i.T*X], [X.T*i, X.T*X])
执行Public Class Class1
Public Property X Integer
Public Overrides Function Equals(ByVal obj As [Object]) As Boolean
If obj Is Nothing OrElse Not [GetType]().Equals(obj.GetType()) Then
Return False
End If
Dim c As Class1 = CType(obj, Class1)
Return X.Equals(c.X)
End Function
End Class
Public Class Class2
Public Property Y As Class1
Get
Return propY
End Get
Set(value As Class1)
If value.X <> propY.X Then
End If
End Set
End Property
Private propY as New Class1
End Class
Sub Main()
Dim C1 As New Class1
C1.X = 1
Dim C2 As New Class2
C2.Y = C1
Dim Cx as New Class1
Cx.X = 2
C2.Y = Cx
语句时,C2.Y属性中的不等式测试失败,因为在执行测试之前propY.X已经设置为2。什么都没有声明为“共享”。
我该如何解决?