我想从位于不同类中的静态方法调用非静态方法。我知道我想从中调用方法的类的实例,但是我无法访问它。
Sub t()
Dim numStart As Long, numEnd As Long, i As Long, nextRow As Long
numStart = 1
numEnd = 66
nextRow = 1
With Worksheets("Display")
For i = numStart To numEnd ' From column A to I (1 to 9)
.Range(.Cells(nextRow, 1), .Cells(nextRow + 8, 1)).Value = i
nextRow = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
Next i
End With
End Sub
答案 0 :(得分:5)
您无法在静态上下文中访问非静态上下文。
您可以(define (delduplicates L)
(cond ((null? L) '())
((list? (member (car L) (cdr L)))
(delduplicates(cdr L)))
(#T (cons (car L) (delduplicates (cdr L))))))
(delduplicates '(1 1 2 3 3 4 4 5)) > (1 2 3 4 5)
静态
_mainform
或将要测试的实例传递给static MainForm _mainform = null;
方法
Test
或使public static void Test(MainForm mainForm)
{
mainForm.DoSmth("test");
}
非静态
Test
除此之外,你应该修改你的设计。想想这些问题。如果我有静态方法,为什么它应该访问实例成员?如果一个方法应该访问实例成员那么为什么它应该是静态的?